|
From: Rod Pemberton on 3 Apr 2008 04:49 http://litux.wz.cz/htm/download.htm#ltdos Rod Pemberton
From: Frank Kotler on 3 Apr 2008 08:31 Rod Pemberton wrote: > http://litux.wz.cz/htm/download.htm#ltdos Great stuff! I haven't gotten it to actually work, beyond the "here I am!" test. Assembles without complaint, except he got bitten by the "pause bug". Hey, it's *not* Nasm's fault Intel made "pause" an instruction! A lot of people used "pause" as a label, and their code broke. (prepend a '$', and Nasm will know it's not an instruction, but will still know the symbol) Annie always used to use "pozz" - ahead of the curve! One warning about "label alone on a line" - harmless and easily fixed. Nice, well-commented (in English!) code. I'm impressed! I'll get back into this - delightfully small, I wanna see it work! Thanks, Rod! Thanks Miroslav! Best, Frank
From: Rugxulo on 3 Apr 2008 15:25 Hi, On Apr 3, 7:31 am, Frank Kotler <fbkot...(a)verizon.net> wrote: > Rod Pemberton wrote: > >http://litux.wz.cz/htm/download.htm#ltdos > > Great stuff! I haven't gotten it to actually work, beyond the "here I > am!" test. I only tested his freeware stuff (some w/ .ASM src: e.g. sachy, lines, bludiste, planety), not LTDOS or MicroDOS, but he's definitely very skilled. ;-) BTW, this isn't the first time someone has written a smaller "lite" DOS in .ASM: see MiniDOS (FASM src), MikeOS (very basic DOS subsystem, NASM src), or RxDOS (MASM src originally but ported to A86, link seems broken but I'll mirror it). Also, supposedly PTS-DOS is pure assembly (but it's closed src, so I can only guess). http://board.flatassembler.net/topic.php?t=5275&start=0 http://mikeos.berlios.de/ http://rugxulo.googlepages.com/rxdos_sources_a86.zip > Assembles without complaint, except he got bitten by the > "pause bug". Hey, it's *not* Nasm's fault Intel made "pause" an > instruction! A lot of people used "pause" as a label, and their code > broke. (prepend a '$', and Nasm will know it's not an instruction, but > will still know the symbol) Annie always used to use "pozz" - ahead of > the curve! Yes, kinda silly since "wait" and "pause" are such common words. NASM 0.98.39 whines BUT the latest NASM 2.02 accepts "pause:" without complaint (unlike FASM): --------------------------------------- ; works fine in 0.97 or 2.02 but not 0.98.39 org 100h mov al,'!' mov cx,15 pause: int 29h loop pause ret --------------------------------------- It was only after NASM 0.97 that they implemented SSE2, which includes "pause". And, I'm no SSE expert, but it's supposedly only needed if looping / testing the value of a variable too often (spin loop?? threaded code??). And the funny thing is it's actually the same thing as "rep nop", so < P3 processors just ignore it! :-P
From: Robert Redelmeier on 3 Apr 2008 16:01 In alt.lang.asm Rugxulo <rugxulo(a)gmail.com> wrote in part: > Yes, kinda silly since "wait" and "pause" are such common words. So common they are both Intel x86 instructions. (WAIT often written as FWAIT for x87 sync). Would you expect to be able to use `add` as a label? Some symobls just get reserved to simplify compliers and assemblers. -- Robert
From: Herbert Kleebauer on 3 Apr 2008 17:37
Robert Redelmeier wrote: > Would you expect to be able to use `add` as a label? Can you give me any logical reason why "add", "mov" or "nop" can't be used as a label. A label is a label and an opcode is an opcode. And if an assembler can't distinct between them, it doesn't deserve the name assembler. |