@# Quotes DB     useful, funny, interesting





Google
 
Web www.quotesdb.info
Undernet  |  EFnet  |  Quakenet  |  Freenode  |  Dalnet  |  Ircnet  |  Galaxynet
Page: 1 2 3



Comments:

<0> hey ive just started learning asm, made my first app, and I was wondering if anyone could recommend me a beginners app to make? something slightly challenging for a beginner (win32, nasm, x86) ty :)
<1> an application for windows written in asm? thats torture man, stick to inline asm
<2> ownagesbot|meh: why are you learning ***embler?
<0> lindi- mainly for the experience :)
<0> id love to fully learn asm though, not just win32, id like to make bootloaders and such (in the future of course.. id best learn to walk first :))
<1> bootloaders can be very, very simple
<1> its probably easier than writing win32 apps
<0> I'd also love to pic program in the future
<0> Wow seriously?
<0> ive only wrote one app so far though (a message box lol)
<1> a boot loader that only loads some sectors from a disk and executes the code contained therein could be done in 50 lines or less
<1> if you need filesystem support, it gets a little more complicated
<1> FAT12 is really simple though
<0> So how about a floppy disk bootloader that just launched say idk, a batch file or some executable, would that be hard?
<3> batch file? that'd involve writing a complete command interpreter
<3> some executable? depends on type. MZ [DOS] exe is fairly easy to load, but if this exe uses OS functions, it won't work



<0> Im on about a DOS one ;)
<3> bootsectors are for loading *operating systems*, not programs.
<1> yeah, there's a huge difference between executing code and running applications
<0> Okay how about one that would boot my default OS from floppy, would that be hard?
<2> depends on the OS
<0> winxp?
<2> i doubt it fits to floppy :)
<0> Ugh, sorry lemmie rephrase
<3> winxp involves complex mode-switching to run it
<0> boot my default OS (on my HD) from my boot floppy
<0> make more sense?
<1> you can't really boot winxp on your own, bootloaders just run xp's own bootloader via something called chainloading
<0> ah okay
<2> indeed it's proprietary
<0> for now I just wana write a basic app though, something say 20-30lines, but im not sure what
<2> write a shell?
<0> Wonder if I could make it, hmm..
<0> I guess I could have a shot at it, ill probably need to read some more of that tutorial first though, I guess :)
<1> while kind-of boring, recreating ALU operations with simple(r) instructions can be a good learning experience
<1> to familiarize yourself with the whole bit-twiddling thing
<0> Yeh, tbh I don't care how crappy or boring it is, I just wana learn some asm :D
<0> I only know high level languages (Java and such), wana get some asm under my belt, who knows when it could be useful ay?
<4> 20-30 lines is a bit small for asm
<1> writing shellcode, on the other hand, is alot of fun but it doesnt really teach you everything you need to know for real-life applications
<3> you mean, there are real-life asm applications?
<1> heh
<1> well, yeah
<0> cool, found this: http://www.osdever.net/tutorials/hello_btldr.php?the_id=85 im think ill have a stab at following that :P
<1> i'm sure they exist
<1> i dont know what they are, though
<1> i was going to say microcontrollers, but they probably run java these days
<3> PIC != x86
<0> I wana learn some PIC :P
<5> mwk: it's still ***embly tho.
<0> java is great, but id just love to start "from the beginning" as it was
<1> mwk: knowing x86 asm is still helpful though
<3> pc stuff involves calling OS stuff, and having lots of room to work with, even if you're writing in ***embler... for PIC, you ARE the OS and have very limited space
<3> true
<1> you have the registers, the opcodes, etc
<6> what you think about efficeon processors ?
<1> branches
<3> geocalc: i think it has funny name.
<1> all the low-level stuff thats fundamentally different from high-level languages
<4> branches on small processors can be fun when they wont reach by a couple of bytes
<6> mwk and ?
<3> geocalc: and.
<6> ..
<5> geocalc: i don't think anyone has an opinion, so you might as well stop asking.
<6> lol ok
<0> I think asm is all about remembering what things do, like "ah", "bl" and such for printing chars etc.
<0> just a quick one before I goto bed, does a DOS program start on label "main"?
<2> ownagesbot|meh: what does that mean?
<2> there are no labels in the binary that you execute
<3> ownagesbot|meh: depends on ***embler, linker, everything.
<0> nasm :)
<3> ownagesbot|meh: DOS just sees an *address* of your label, not its name.
<0> I noticed it was ..start: for win32
<3> ownagesbot|meh: linker? output format?
<0> mwk i realise, I should have said "compiler"
<2> if you say ".org 0x100" then the next instruction will be the first one executed in COM file



<2> no matter what labels you have there
<0> aight ty, im off to bed g'night
<7> Hello, does someone knows the PE file format ?
<7> I am looking to force section .rsrc to be loaded in memory as it seems to not be.
<7> What are the fields/value to check so I am sure the section is mapped into memory ?
<8> at the beginning of a function, when i see addition/subtraction to esp... what is that actually doing?
<8> like say a function starts with: push ebp; mov ebp, esp; sub esp, 10
<8> what would that 10 actually represent?
<9> Frame Pointers
<8> HuntsMan: but specifically?
<8> HuntsMan: actually, nevermind, i found my answer
<8> http://en.wikibooks.org/wiki/Reverse_Engineering/Functions_and_stack_frames
<8> brb
<10> prout
<11> hi
<12> hi
<11> anyone could help me how to use a pointer in a visual studio __asm block? i'm trying to use something like x=table[idx]. where table is a pointer to a float array. i got the index in edx
<11> i got no idea how to use pointers in masm
<11> actually, does the label 'table' behave like any other variable?
<12> iirc you can use vars in an inline-block in visual-studio just like in c
<11> yea but it's a pointer to an array and i don't know how to use it
<11> tried stuff like:
<11> mov ecx, dword ptr [tri_table], fld dword ptr [ecx+edx*4]
<11> fld dword ptr [table + edx*4]
<11> these result in a crash
<12> wtf? there operands for mov?
<12> three*
<11> fld = load into FPU register
<11> no, it's 2 operands
<12> is your array something like "float table[];"
<11> ecx and dword ptr [tri table]
<11> yea
<11> it's float table[40][1025]
<11> so i calculate 1025*table_no+idx in edx
<12> than its not a pointer
<11> so if I save edx to a variable idxx2 and use 'float t1 = * ((float*)&tri_table + idx2);' in c++ that works
<11> so edx is a correct index
<11> then what is table?
<11> if not a pointer?
<12> arrays!=pointers
<11> well, i cast it to a pointer to float using the *((float*)&tri_table and it works like that
<11> arrays=pointers in my opinion
<12> if i have int f[29]; you could write _asm { mov eax,f[28]} iirc
<11> since when you p*** an array to a function in c++, only a pointer is p***ed
<11> ok i'll try
<12> yeah when you p*** it to a function
<12> then only a pointer to the first element is p***ed
<11> that's true
<11> table[0] = *table
<11> table[2] = *(table + 2)
<11> so table behaves as a pointer
<12> to because the type of int table[20] is int[20] where as int *table the type is int *
<12> s/to/no
<11> yea, true, they're not totally eqivalent
<11> obviously
<12> but any away since you can access local-vars in your _asm statement directly
<12> why dont you write "fld table[foo][bar]"
<12> or whatever you want to do :D
<11> cos i got an 'improper operand type' error when i try to do that
<11> i can't use that like that
<12> hmmm
<12> what line does he complain about?
<11> fld table[0][5]
<12> and if you do: "float f; fld f"?
<11> i can do fld f
<11> but i want do do it in asm not in c++9
<11> that's the point....
<12> no what i meant is create a local var 'float f' and do _asm{fld f}
<11> but i create a local varin c++ not in asm
<11> i want to do everything in asm not in c++
<12> thats just a test
<11> when i type float f = table[0][f]
<11> when i type float f = table[foo][bar]
<11> flx x works if x is a local float variable


Name:

Comments:

Please enter the result of the sum 63 + 46 (to avoid spam):






Return to #asm
or
Go to some related logs:

Command failed: Block device required
#math
xserver-xorg postinst /etc/X11/X; file has been customized debian testing
#ubuntu
libdvdcss ubantu
#css
gnome art-manager repository
#kde
emerge sandbox
monodoc unhandled url



Home  |  disclaimer  |  contact  |  submit quotes