Prev: Boost and UMFPACK: anyone tried it?
Next: Statistics for Business and Economics 9 ED by Anderson, Sweeney solutions manual
From: Bill Cunningham on 4 Mar 2010 13:23 "Moi" <root(a)invalid.address.org> wrote in message news:f0de3$4b8eea2d$5350c024$22021(a)cache100.multikabel.net... > He tried to find his cat. Believe me I have no trouble finding him. Especially eating time. Nor my rabbit. Bill
From: Bill Cunningham on 4 Mar 2010 15:54 "rossum" <rossum48(a)coldmail.com> wrote in message news:8jjto5dbec2nb37l71eaevjsgi5eeol0dc(a)4ax.com... [snip] > Many compilers will add in a lot of standard library stuff so do not > be surprised if a simple "Hello World" program produces a large > executable. You may want to investigate ways of excluding libraries, > look at the instructions/flags for your compiler. I have no idea how to do the above. What about strip? The assembly I assemble I use nasm and no C code. It's hard to tell what a C compiler will add your right there. But the matter at hand; disassembly, I don't know what can be taken out. I am going to get a dissasembly of an avi viewer code some time and post a disassembly. Can I use the headers I have copied I call avi.h and str.h to write an avi viewer? I have the win32 api but I hope I don't need that. Here are the two headers I've written from the format info I've seen online: typedef struct _avimainheader { FOURCC fcc; DWORD cb; DWORD dwMicroSecPerFrame; DWORD dwMaxBytesPerSec; DWORD dwPaddingGranularity; DWORD dwFlags; DWORD dwTotalFrames; DWORD dwInitialFrames; DWORD dwStreams; DWORD dwSuggestedBufferSize; DWORD dwWidth; DWORD dwHeight; DWORD dwReserved[4]; } AVIMAINHEADER; typedef struct _avistreamheader { FOURCC fcc; DWORD cb; FOURCC fccType; FOURCC fccHandler; DWORD dwFlags; WORD wPriority; WORD wLanguage; DWORD dwInitialFrames; DWORD dwScale; DWORD dwRate; DWORD dwStart; DWORD dwLength; DWORD dwSuggestedBufferSize; DWORD dwQuality; DWORD dwSampleSize; struct { short int left; short int top; short int right; short int bottom; } rcFrame; } AVISTREAMHEADER; typedef struct tagBITMAPINFOHEADER { DWORD biSize; LONG biWidth; LONG biHeight; WORD biPlanes; WORD biBitCount; DWORD biCompression; DWORD biSizeImage; LONG biXPelsPerMeter; LONG biYPelsPerMeter; DWORD biClrUsed; DWORD biClrImportant; } BITMAPINFOHEADER; typedef struct { WORD wFormatTag; WORD nChannels; DWORD nSamplesPerSec; DWORD nAvgBytesPerSec; WORD nBlockAlign; WORD wBitsPerSample; WORD cbSize; } WAVEFORMATEX; typedef struct { BYTE bFirstEntry; BYTE bNumEntries; WORD wFlags; PALETTEENTRY peNew[]; } AVIPALCHANGE; typedef struct _avioldindex { FOURCC fcc; DWORD cb; struct _avioldindex_entry { DWORD dwChunkId; DWORD dwFlags; DWORD dwOffset; DWORD dwSize; } aIndex[]; } AVIOLDINDEX; Would I need any special libraries like some kind of media interface for windows? Bill
From: Jongware on 5 Mar 2010 04:39 On 3/4/2010 21:54 PM, Bill Cunningham wrote: > "rossum"<rossum48(a)coldmail.com> wrote in message > news:8jjto5dbec2nb37l71eaevjsgi5eeol0dc(a)4ax.com... > > [snip] > Can I use the headers I have copied I call avi.h and str.h to write an > avi viewer? I have the win32 api but I hope I don't need that. Here are the > two headers I've written from the format info I've seen online: [etc.] It's a start. Using the headers you have found, you can begin by writing an AVI file inspector, just printing out the relevant data. Try it on all AVIs you can possibly find. I am a bit rusty on the full AVI format. I'm pretty much convinced it's more like a wrapper around even more data. Yes, the *basics* are all in these structures, so you can get the display width, height, etc. But the actual graphic (and sound!) data is packed per type: FOURCC fccType; FOURCC fccHandler; These define the type of compression (if I'm not mistaken). Some types are fairly easy -- I believe there even is one totally 'uncompressed' type, only containing Windows type BMPs --, so it's fairly easy to write a "player" for those. But there are lots and lots of compression techniques, all the way up to HD quality MPEG-4, and it's really *very* difficult to write an efficient viewer for these. Compare it with writing "your own JPEG viewer" and "your own MP3 player". Even now there are AVI players that cannot show 'all' AVIs, as some of the compression techniques are either arcane, or even in propriety format. (IV50 springs to mind, as there is no way to play these on my Mac! It's an Intel-only format.) Nevertheless, you should be able to create a player for at least the basic types. Have fun! [Jw]
From: Alan Curry on 7 Mar 2010 03:24 In article <4b90d16b$0$22942$e4fe514c(a)news.xs4all.nl>, Jongware <jongware(a)no-spam.plz> wrote: | |Even now there are AVI players that cannot show 'all' AVIs, as some of |the compression techniques are either arcane, or even in propriety |format. (IV50 springs to mind, as there is no way to play these on my |Mac! It's an Intel-only format.) There is an IV50 decoder in the xanim codec pack, which is available for powerpc, so unless you've got an m68k Mac, there is a way. You don't actually have to use xanim, since MPlayer can load its codecs. It's not the best we could hope for (that would be IV50 support in libavcodec of course) but it plays them. And you can use mencoder to convert them to a less obsolete codec if you think the increased cross-platform playability is worth the slight loss of quality caused by re-encoding. -- Alan Curry
From: Kenneth Brody on 18 Mar 2010 12:09
On 3/3/2010 3:46 PM, Bill Cunningham wrote: > "Coos Haak"<chforth(a)hccnet.nl> wrote in message > news:11383wlhg4u8$.14l3goznz04kj.dlg(a)40tude.net... > >> FCOL, this is the disassembly of the source file, not the object file. >> What you see is just the ASCII representation of it. Only 0x1c8 (456 >> decimal) bytes of the text you (or someone) typed in. > > So can you not disassemble source code? I'm new to this asssembly stuff. > My C isn't that great either. Should I be disassembling object or binaries > only? I thought it was a disassembly of the binary. This may be a silly question, but... If you already have source code, why do you need a disassembler? -- Kenneth Brody |