--------------- FIDO MESSAGE AREA==> TOPIC: 145 ASSEMBLY LANG. Ref: EBC00056Date: 07/07/97 From: JAMES VAHN Time: 08:44pm \/To: ED BEROSET (Read 1 times) Subj: RE: FW: protected mode Ed Beroset writes: > That's further than I get. Here's what happens when I attempt to > assemble this under Linux (two different versions of the RedHat > distribution, FWIW) using the GNU assembler, version 2.7: GNU assembler version 970202 (i486-linux), using BFD version 2.7.0.9 This is from Debian Linux 1.3 > It seems to me that GAS, at least the version I have, just isn't up to the > task. I wonder if this isn't the root of Paul's problems? I came to the same conclusion-- it's making 32-bit memory references despite the .code16 directive. So I tried a Nasm0.94 version, which assembles correctly but I think it jams because of the load address, we need to setup the offsets..... ; ;nasm -f bin setup2.asm -o setup2.bin ; ; bits 16 section .text global _start ;org 0x100 _start: mov ax,cs mov ds,ax mov es,ax mov ss,ax mov sp,0xfff0 mov ah,0x3 mov bh,0x0 int 0x10 mov ax,0x1301 mov bx,0x7 mov bp,msg ; + offset mov cx,[ msg_length ] ; + offset int 0x10 cli mov al,0x80 out 0x70,al lgdt [ gdt_descriptor ] ; + offset lidt [ idt_descriptor ] ; + offset o32 mov eax,cr0 or al,0x1 o32 mov cr0,eax ;jmp dword 0x8:0x1000 jmp $ gdt_descriptor dw 0x0017 dd 0x00000000 dd 0x00000000 dd 0x00CF9A00 dd 0x00000FFF dd 0x00CF9200 dd 0x00000FFF idt_descriptor dw 0x0000 dd 0x00000000 msg db 'Entering protected mode...',0x0D,0x0A msg_length dw $ - msg --- ifmail-tx (i386 Linux) * Origin: James Vahn (jvahn@short.circuit.com) (1:346/15.1) --------------- FIDO MESSAGE AREA==> TOPIC: 145 ASSEMBLY LANG. Ref: EBC00057Date: 07/07/97 From: JAMES VAHN Time: 09:24pm \/To: ALL (Read 1 times) Subj: Re: New to ASM On Mon, 7 Jul 1997, Eric Benoit wrote: > Oh, and does anyone else here use Magic Assembler? Rather experimental, that asssembler. Try Nasm. Also, it seems to me Arrow is able to create .LST files that can be used with the ZD86 debugger. --- ifmail-tx (i386 Linux) * Origin: James Vahn (jvahn@short.circuit.com) (1:346/15.1) --------------- FIDO MESSAGE AREA==> TOPIC: 145 ASSEMBLY LANG. Ref: EBC00058Date: 07/07/97 From: BERT VAN DAM Time: 08:28pm \/To: ALL (Read 1 times) Subj: 80x86 versus Z80 Hi, This may be a very silly question but if I don't ask it I won't know :) So here it is: Is it possible to take a 80x86 assembler code and translate it to Z80 assmbler code (automatically ofcourse, manually I'm sure it can be done), and if yes what program would do that for me? CU Bert --- GEcho 1.00 * Origin: Hotel Zeezicht (2:285/750.16) --------------- FIDO MESSAGE AREA==> TOPIC: 145 ASSEMBLY LANG. Ref: EBC00059Date: 07/01/97 From: DENIS BOYLES Time: 07:25pm \/To: JOHN GARDENIERS (Read 1 times) Subj: ArrowSoft Assembler Hi John, BPL>> bankrupt. It comes with no documentation and crashes DB> As for dox, it's a MASM 3.0 clone, so how much dox do you need. JG> ??? You're assuming everyone is either familiar with MASM JG> or has access to it's docs (no "x" in docs). For the vast majority of I DO realize that docs, is spelled docs, had I intended to spell it as such I would of. The DOX reference is just a little hold of over of my C64 days, which I kinda liked. (besides, bad form correcting the english anyway :) I'm also not assumeing that people are familiar with MASM. It's more of a research thing. You download the file and check out the ASM.DOC file and it says this is a MASM 3.0 clone. Knowing that, one can simply ring around, check, etc for information concerning MASM. With any luck, such as in my case, you'll find all the documentation you need. DB> A trip to the local library reveals the Waite's MASM bible, as well JG> Your library perhaps, not ours. Yes, granted that's my local library, but surely there must be something in yours? If not, one could always order the book itself, but then I guess that defeats the purpose of a "free" assembler! :) Cheers, Denis Boyles ... Go straight to the docs. Do not pass GO. Do not collect $200! ___ Blue Wave/QWK v2.12 --- Maximus/2 3.01 * Origin: Frog Hollow Port Moody BC 604-469-0264/0284 (1:153/290) --------------- FIDO MESSAGE AREA==> TOPIC: 145 ASSEMBLY LANG. Ref: EBC00060Date: 07/01/97 From: DENIS BOYLES Time: 08:34pm \/To: GINNY BAAS (Rcvd) (Read 2 times) Subj: Fisubr GB> FISUBR DWORD PTR [BP+DI] GB> Obviosly this was just a random pair of bytes, but anyways, what the GB> @#$% does FISUBR do? Just a wild guess, but I'd say it had something to do with the math co-processer. Possibly F is floating point, I is integer and SUBR is for subtract or subroutine? Cheers, Denis Boyles ... If it wasn't for C, we would be using BASI, PASAL and OBOL! ___ Blue Wave/QWK v2.12 --- Maximus/2 3.01 * Origin: Frog Hollow Port Moody BC 604-469-0264/0284 (1:153/290) --------------- FIDO MESSAGE AREA==> TOPIC: 145 ASSEMBLY LANG. Ref: EBC00061Date: 07/01/97 From: DENIS BOYLES Time: 07:38pm \/To: ROBERT FORTUNE (Read 1 times) Subj: How is DGroup determined RF> DGROUP. Does anyone know how MASM determines the segment address RF> that this DGROUP symbol equates to? See below where DGROUP is loaded DB> You determine it. That is, a DGROUP segment is a grouping of several SM RF> While that may be true, with the newer "Simplified" MASM RF> directives MASM is determing DGroup for the programmer. Here's a Ahh, I see. I don't think you mentioned that in the beginning, only what was DGROUP. RF> .MODEL small, c ; This statement is required before you RF> mov dx, DGROUP ; how is this DGroup address RF> determined??? mov ds, dx RF> My question is how does MASM determine what the DGROUP will be? I answered this already I believe. Why? Well, look at your MODEL line, it specifies a C model does it not? DB> For example: DB> _TEXT SEGMENT WORD PUBLIC 'CODE' DB> _TEXT ENDS DB> _DATA SEGMENT WORD PUBLIC 'DATA' DB> _DATA ENDS DB> CONST SEGMENT WORD PUBLIC 'CONST' DB> CONST ENDS DB> _BSS SEGMENT WORD PUBLIC 'CONST' DB> _BSS ENDS DB> DGROUP GROUP CONST,_BSS,_DATA DB> ASSUME CS:_TEXT,DS:DGROUP,SS:DGROUP DB> You'll notice this defines four MASM segments, which BTW might be used o DB> link with C. Now, look at the DGROUP GROUP line, see how it includes Which is what I just said that this DGROUP shell would work for, using old directives, correct? So then, your DGROUP, is simply formed by all those above. Just that in small direcives the above DGROUPing is done for you my MASM. (rather then typeing it all out) DB> What this does is make DGROUP one segment that combines those three. In RF> No. What I *think* you are doing is using regular segment RF> directives. (Which I've saved for future reference, thanks.) Yes I am, but then again what ARE simplified directives? They are just the old ones simplified. For example this: .STACK 1024 is really the same as say this: STACK SEGMENT PARA STACK 'STACK' db 1024 DUP(?) STACK ENDS RF> question is how does MASM determine the data segment address\DGROUP RF> for that simplified .STARTUP directive? Well, it would be from the .MODEL wouldn't it not like I just mentioned. More importantly, the C type, defining a C program as outlined by Microsoft. Which means there a several segments like CONST, BSS, TEXT, etc for various parts of the program. Which would be included for you as part of that C definition. Does that seem reasonable and more helpful? BTW: I don't have MASM or the manual anyway. :) Cheers, Denis Boyles ... "Milhouse, we live in the age of cooties!" - Bart Simpson ___ Blue Wave/QWK v2.12 --- Maximus/2 3.01 * Origin: Frog Hollow Port Moody BC 604-469-0264/0284 (1:153/290) --------------- FIDO MESSAGE AREA==> TOPIC: 145 ASSEMBLY LANG. Ref: EBC00062Date: 07/02/97 From: PAUL WANKADIA Time: 09:52am \/To: JON GENTIL (Read 1 times) Subj: Free assemblers On 28 Jun 97, Jon Gentil wrote to Paul Wankadia -- FH> -A86(v4.02), Eric Isaacson JG> EXCELLANT, but not free. PW> It's free, but you have to pay for "A386" and such. JG> No, it's not. It's shareware. $50 for A86, $50 for D86, or $80 for JG> A86+D86+A386+D386. When one can pay nothing and still use A86/D86 (albeit dishonestly and maybe even illegally), how many people are going to still register and pay? OTOH, if they want to fork out $80 for A86/D86/A386/D386, that's a different matter entirely, since A386/D386 aren't available as shareware... --- PPoint 2.00 * Origin: Junyer's Workshop (3:640/772.3) --------------- FIDO MESSAGE AREA==> TOPIC: 145 ASSEMBLY LANG. Ref: EBC00063Date: 06/27/97 From: TOBIAS REINHARD Time: 11:19pm \/To: ALL (Read 1 times) Subj: Switching Videomode Hi! I'm looking for docs or sources about how to switch to a extendet Videomode (800*600*16m) on a S3 Trio 64 card. Does anyone have that? I don't want to use BIOS/Vesa! I want to access it DIRECT (via IN/OUT) THX Tobias --- GoldWorld * Origin: Q U A K E - better than the reality (2:245/5530.52) --------------- FIDO MESSAGE AREA==> TOPIC: 145 ASSEMBLY LANG. Ref: EBC00064Date: 07/01/97 From: MARTIN PREUSS Time: 11:53pm \/To: SERGIO LO CASCIO (Read 1 times) Subj: Re: Copy Protect (naive quest Sergio, 23.06.97 ("Re: Copy Protect (naive quest"): MP>> route dir) -Search the disc for the sectors which are destroed now MP>> -Write a little routine that test your disc for the damage to be MP>> exactly at this position. It's almost impossible to destroy MP>> another disc at exactly this position >But it's very easy to crack! >It doesn't exist a uncrackable copy protection! >My idea of an effective copy protection is that it takes a lot of time >to crack my software so people prefer to buy the original than >wait for a year or more for a free cracked version ! It's no effective CRACK protection, though it is a good COPY protection, because without cracking the loading routine you are not able to COPY that disc. For protecting it against CRACKING, you have to apply a CRACK protection to the loader. That together should make it harder to crack and to distribute your protected object. But you're right, there is no uncrackable protection mechanism ... read'ya mp WWW: http://home.t-online.de/home/aquamaniac (Assembler-Infos) --- Crosspoint 1.01B * Origin: Gruesse aus der Jadestadt (2:2426/5060.62) --------------- FIDO MESSAGE AREA==> TOPIC: 145 ASSEMBLY LANG. Ref: EBC00065Date: 06/26/97 From: KURT WISMER Time: 04:02pm \/To: HERMAN SCHONFELD (Read 1 times) Subj: Memory! -=> Mocking Herman Schonfeld to Paul Wankadia <=- EB> Please, tell me how to directly access memory in C++ (DOS) ??? TC> I'd try the MK_FP macro to create a pointer to the memory location you TC> want to access. I use this a lot when I want to do some fast work with PW>What's that in terms of DJGPP??? HS> Paul, I would've replied to this thread in "C_PLUS_PLUS" where it came HS> from if Jerry didn't ban me for saying `Boo!' or whatever it was that HS> I did.. y'know, it doesn't take much to figure out that threads that belong specifically in c_plus_plus do not belong here... if you have had your access restricted then you might want to consider refraining from continuing the conversations that take place in that echo, or take your replies to netmail... at least, that would be the curteous thing to do... ... beware of quantum ducks... Quark! Quark! Quark!... --- TGWave v1.20.b09 * Origin: fks Online! * Ontario, Canada * (905)820-7273 * (1:259/423)