2009-03-04  Cyrille Bagard <nocbos@gmail.com>

	* src/analysis/line.c:
	* src/analysis/line.h:
	Add a line type for binary code display and some generic
	functions/properties for all lines.

	* src/arch/processor.h:
	Move the definition of AdressMode (typo !) here.

	* src/binary.c:
	Update code and calls.

	* src/gtksnippet.c:
	* src/gtksnippet.h:
	Compute requested size and display binary content using the new code lines.

2009-03-03  Cyrille Bagard <nocbos@gmail.com>

	* configure.ac:
	Add the new Makefile from 'src/panel' directory to AC_CONFIG_FILES.

	* src/editor.c:
	Load all registered panels and display them.

	* src/format/exe_format.c:
	* src/format/java/attribute.c:
	* src/format/java/Makefile.am:
	* src/format/Makefile.am:
	Use the new panel to log system messages.

	* src/Makefile.am:
	Add panel to SUBDIRS and panel/libpanel.a to openida_LDADD.

	* src/panel/log.c:
	* src/panel/log.h:
	* src/panel/Makefile.am:
	* src/panel/panels.c:
	* src/panel/panels.h:
	New entries: create a system messages panel and register it.

	* src/pan_strings.c:
	* src/pan_symbols.c:
	Typo.

2009-02-18  Cyrille Bagard <nocbos@gmail.com>

	* configure.ac:
	Add the new Makefile from 'src/analysis' directory to AC_CONFIG_FILES.

	* src/analysis/line.c:
	* src/analysis/line.h:
	* src/analysis/Makefile.am:
	Write some code to manage the lines for prologues.

	* src/binary.c:
	Build a prologue for each binary: license, file and checksum.

	* src/common/dllist.c:
	* src/common/dllist.h:
	Import double linked lists from Firebox.

	* src/common/Makefile.am:
	Add dllist.[ch] to libcommon_a_SOURCES.

	* src/editor.c:
	Register the main widget in order to be able to create Pango layouts.

	* src/gtksnippet.c:
	* src/gtksnippet.h:
	Update the way the content is printed (need to be updated).

	* src/Makefile.am:
	Add analysis to SUBDIRS and analysis/libanalysis.a to openida_LDADD.

2009-02-16  Cyrille Bagard <nocbos@gmail.com>

	* configure.ac:
	Add the new Makefiles from 'pixmaps/' and 'src/gtkext/' directories to
	AC_CONFIG_FILES.

	* Makefile.am:
	Add pixmaps to SUBDIRS.

	* pixmaps/drop_bottom_hover.png:
	* pixmaps/drop_bottom.png:
	* pixmaps/drop_center_hover.png:
	* pixmaps/drop_center.png:
	* pixmaps/drop_left_hover.png:
	* pixmaps/drop_left.png:
	* pixmaps/drop_right_hover.png:
	* pixmaps/drop_right.png:
	* pixmaps/drop_top_hover.png:
	* pixmaps/drop_top.png:
	* pixmaps/dropwin_back.png:
	* pixmaps/Makefile.am:
	Define pictures for the "Drag and Drop" window.

	* src/binary.c:
	Register the ELF format.

	* src/easygtk.c:
	* src/easygtk.h:
	Quickly load an image widget.

	* src/editor.c:
	Use the new dock panels.

	* src/format/elf/e_elf.c:
	* src/format/elf/e_elf.h:
	Check if a binary is matching the binary format.

	* src/gtkext/gtkdockitem.c:
	* src/gtkext/gtkdockitem.h:
	* src/gtkext/gtkdockpanel.c:
	* src/gtkext/gtkdockpanel.h:
	* src/gtkext/gtkdropwindow.c:
	* src/gtkext/gtkdropwindow.h:
	* src/gtkext/Makefile.am:
	Create new GTK widgets for handling "Drag and Drop" methods. The code is
	still a little buggy/crappy and will be improved.

	* src/Makefile.am:
	Add support.[ch] to openida_SOURCES and gtkext/libgtkext.a to openida_LDADD.

	* src/support.c:
	* src/support.h:
	Look for picture files.

2009-01-29  Cyrille Bagard <nocbos@gmail.com>

	* configure.ac:
	Add the new Makefile from 'src/format/pe/' directory to AC_CONFIG_FILES.
	
	* src/binary.c:
	Update code.

	* src/format/Makefile.am:
	Add pe to SUBDIRS.

	* src/format/pe/e_pe.c:
	* src/format/pe/e_pe.h:
	* src/format/pe/Makefile.am:
	* src/format/pe/pe-int.h:
	New entries: begin to support PE binaries.

	* src/Makefile.am:
	Update openida_LDADD.

2009-01-25  Cyrille Bagard <nocbos@gmail.com>

	* configure.ac:
	Add the new Makefiles from 'common' and 'src/format/java/' directories to AC_CONFIG_FILES.
	The modification of WARNING_FLAGS and will be improved.

	* src/binary.c:
	Update code.

	* src/common/endianness.c:
	* src/common/endianness.h:
	* src/common/Makefile.am:
	New entries: read unsigned integers regardless of the host machine endianness.

	* src/format/exe_format.c:
	* src/format/exe_format.h:
	Properly register new file formats.

	* src/format/java/attribute.c:
	* src/format/java/attribute.h:
	* src/format/java/e_java.c:
	* src/format/java/e_java.h:
	* src/format/java/field.c:
	* src/format/java/field.h:
	* src/format/java/java-int.h:
	* src/format/java/Makefile.am:
	* src/format/java/method.c:
	* src/format/java/method.h:
	* src/format/java/pool.c:
	* src/format/java/pool.h:
	New entries: support the Java Class file format.

	* src/format/Makefile.am:
	Add java to SUBDIRS.

	* src/Makefile.am:
	Add common to SUBDIRS and update openida_LDADD.

2009-01-06  Cyrille Bagard <nocbos@gmail.com>

	* src/easygtk.c:
	* src/easygtk.h:
	Add a function allowing to [quickly] create radio menu items.

	* src/editor.c:
	Update code.

	* src/gtkbinview.c:
	* src/gtkbinview.h:
	* src/gtkcodeview.c:
	* src/gtkcodeview.h:
	New/old entries: rename gtkcodeview.[ch] into gtkbinview.[ch].

	* src/Makefile.am:
	Add gtkbinview.[ch] to openida_SOURCES and remove gtkcodeview.[ch].

	* src/pan_symbols.c:
	Update code.

2008-12-23  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/x86/instruction.h:
	* src/arch/x86/op_add.c:
	* src/arch/x86/opcodes.h:
	* src/arch/x86/processor.c:
	Support more add opcodes: 0x03 and fixed 0x01 (Operand-size override prefix).

2008-12-20  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/x86/instruction.h:
	* src/arch/x86/opcodes.h:
	* src/arch/x86/op_sub.c:
	* src/arch/x86/processor.c:
	Add two extra opcodes: sub (0x2c and 0x2d).

	* src/editor.c:
	Do not load the default project file ; use the empty one instead.

2008-11-17  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/operand.c:
	* src/arch/operand.h:
	* src/arch/operand-int.h:
	* src/arch/x86/operand.c:
	Take care of signed immediate values as well as unsigned ones.

	* src/arch/x86/processor.c:
	Replace 'value' by 'unsigned_imm'.

	* src/format/elf/symbol.c:
	Replace AOS_64_BITS by AOS_64_BITS_UNSIGNED.

2008-11-10  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/instruction.c:
	* src/arch/instruction.h:
	* src/arch/instruction-int.h:
	* src/arch/processor.c:
	* src/arch/processor.h:
	Save and provide the location and the size of an instruction.

	* src/binary.c:
	Update a call to decode_instruction.

	* src/easygtk.c:
	* src/easygtk.h:
	Allow to create check menu items.

	* src/editor.c:
	Add two extra menus to show/hide virtual addresses / binary code.

	* src/format/elf/symbol.c:
	Update a call to decode_instruction.

	* src/format/exe_format.c:
	* src/format/exe_format.h:
	Provide the address of the loaded binary content.

	* src/gtkcodeview.c:
	* src/gtkcodeview.h:
	Add two functions to show/hide virtual addresses / binary code.

	* src/gtksnippet.c:
	* src/gtksnippet.h:
	Add two functions to show/hide virtual addresses / binary code. Extend
	the building of the pango's content.

2008-10-30  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/processor.c:
	* src/arch/processor-int.h:
	* src/arch/x86/processor.c:
	Remove the CR & LF characters when printing strings.

	* src/binary.c:
	* src/binary.h:
	Display all found strings on binary loading.

	* src/easygtk.c:
	* src/easygtk.h:
	Add a function which builds a notebook widget.

	* src/editor.c:
	Build the bottom of the editor.

	* src/format/elf/e_elf.c:
	* src/format/exe_format.c:
	* src/format/exe_format.h:
	* src/format/exe_format-int.h:
	Begin to rename the function providing the list of all resolved items.

	* src/Makefile.am:
	Add pan_strings.[ch] to openida_SOURCES.

	* src/pan_strings.c:
	* src/pan_strings.h:
	New entries: display all found strings.

	* src/pan_symbols.c:
	* src/pan_symbols.h:
	Typo.

2008-10-29  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/x86/op_call.c:
	Save the type (AIT_CALL) of all kinds of 'call' instruction.

	* src/format/elf/e_elf.c:
	Update calls to the functions handling the sections.

	* src/format/elf/elf-int.h:
	Move the ELF section header wrapper to section.h.

	* src/format/elf/section.c:
	* src/format/elf/section.h:
	Rewrite the way to look for given sections.

	* src/format/elf/strings.c:
	* src/format/elf/symbol.c:
	Do not rely on section names anymore.

2008-10-27  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/x86/instruction.h:
	Register some new instructions.

	* src/arch/x86/Makefile.am:
	Add op_cld, op_movsx and op_not to libarchx86_a_SOURCES.

	* src/arch/x86/op_add.c:
	Extend the current opcode support.

	* rc/arch/x86/op_cld.c:
	New entry: handle a new opcode.

	* src/arch/x86/opcodes.h:
	Register some new instructions.

	* src/arch/x86/operand.c:
	* src/arch/x86/operand.h:
	Accept the 'cl' register as operand.

	* src/arch/x86/op_jump.c:
	* src/arch/x86/op_mov.c:
	Extend the current opcode support.

	* src/arch/x86/op_movsx.c:
	New entry: handle a new opcode.

	* src/arch/x86/op_movzx.c:
	Extend the current opcode support.

	* src/arch/x86/op_not.c:
	New entry: handle a new opcode.

	* src/arch/x86/op_shl.c:
	Extend the current opcode support.

	* src/arch/x86/processor.c:
	Extend the current opcode support (0x01, 0x72, 0x73, 0x88, 0xd3, 0xf7,
	0xfc, 0xb6 and 0xbe).

2008-10-27  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/processor.c:
	Take care here of decoding failures.

	* src/arch/x86/instruction.h:
	Register some new instructions.

	* src/arch/x86/Makefile.am:
	Add op_movzx.c, op_rcl.c, op_rcr.c, op_rol.c, op_ror.c, op_shl.c and
	op_shr.c to libarchx86_a_SOURCES.

	* src/arch/x86/op_adc.c:
	* src/arch/x86/op_add.c:
	* src/arch/x86/op_and.c:
	* src/arch/x86/op_cmp.c:
	Complete support of the 0x81 and 0xc1 opcodes.

	* src/arch/x86/opcodes.h:
	Register some new instructions.

	* src/arch/x86/op_movzx.c:
	First attempt to handle a two-byte instruction.

	* src/arch/x86/op_or.c:
	Complete support of the 0x81 and 0xc1 opcodes.

	* src/arch/x86/op_rcl.c:
	* src/arch/x86/op_rcr.c:
	* src/arch/x86/op_rol.c:
	* src/arch/x86/op_ror.c:
	New entries: complete support of the 0x81 and 0xc1 opcodes.

	* src/arch/x86/op_sar.c:
	* src/arch/x86/op_sbb.c:
	Complete support of the 0x81 and 0xc1 opcodes.

	* src/arch/x86/op_shl.c:
	* src/arch/x86/op_shr.c:
	New entries: complete support of the 0x81 and 0xc1 opcodes.

	* src/arch/x86/op_sub.c:
	* src/arch/x86/op_xor.c:
	Complete support of the 0x81 and 0xc1 opcodes.

	* src/arch/x86/processor.c:
	Better handle prefixes. Complete support of the 0x81 and 0xc1 opcodes.

2008-10-21  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/x86/processor.c:
	* src/format/elf/e_elf.c:
	* src/format/elf/elf-int.h:
	Use strings as target addresses.

	* src/format/elf/Makefile.am:
	Add strings.[ch] to libformatelf_a_SOURCES.

	* src/format/elf/strings.c:
	* src/format/elf/strings.h:
	New entries: register all found strings in binaries.

	* src/format/exe_format.h:
	Add STP_STRING to symbol types.

2008-10-19  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/instruction.c:
	Define a type for the 'db' instruction.

	* src/arch/instruction-int.h:
	Add more information about instructions: virtual address and type.

	* src/arch/operand.c:
	* src/arch/operand.h:
	Add a function to get the immediate value of an operand.

	* src/arch/processor.c:
	Save the virtual address of a decoded instruction.

	* src/arch/x86/instruction.h:
	* src/arch/x86/op_add.c:
	* src/arch/x86/opcodes.h:
	Register some new instructions.

	* src/arch/x86/operand.c:
	Fix a bug when reading relative addresses (16/32 bits).

	* src/arch/x86/op_jump.c:
	* src/arch/x86/op_push.c:
	Register some new instructions and define their type.

	* src/arch/x86/processor.c:
	Register some new instructions. Fix the case of the 0x00 opcode (add).

	* src/format/elf/e_elf.c:
	Load .plt as executable section.

	* src/format/elf/elf-int.h:
	Try to support both 32 and 64 bits architectures (Elf_Rel and Elf_Sym).

	* src/format/elf/symbol.c:
	Register symbols found in the PLT.

2008-10-12  Cyrille Bagard <nocbos@gmail.com>

	* src/binary.c:
	Use the new functions to analyze code.

	* src/format/elf/e_elf.c:
	* src/format/elf/e_elf.h:
	Provide default code parts to analyze.

	* src/format/elf/elf-int.h:
	Try to support both 32 and 64 bits architectures.

	* src/format/elf/section.c:
	Fix a bug if no section name is found.

	* src/format/exe_format.c:
	* src/format/exe_format.h:
	Add functions to handle given parts of binary code.

	* src/format/exe_format-int.h:
	Provide default code parts to analyze.

2008-10-05  Cyrille Bagard <nocbos@gmail.com>

	* src/binary.c:
	* src/binary.h:
	Load and unload binaries with basic properties attached.

	* src/dlg_sections.c:
	* src/dlg_sections.h:
	New entries: not [yet] used ; provide a way to select sections to process.

	* src/easygtk.c:
	* src/easygtk.h:
	New entries: make easy to use the GTK functions.

	* src/editor.c:
	Update the code. Add menus to the GUI.

	* src/Makefile.am:
	Add dlg_sections.[ch] easygtk.[ch], project.[ch], xdg.[ch] and xml.[ch]
	to openida_SOURCES.

	* src/project.c:
	* src/project.h:
	New entries: define a basic support of OpenIDA projects.

	* src/xdg.c:
	* src/xdg.h:
	New entries: support some points of the Freedesktop standards.

	* src/xml.c:
	* src/xml.h:
	New entries: provide reading and writing facilities for XML data.

2008-09-20  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/operand.h:
	* src/arch/x86/instruction.h:
	* src/arch/x86/op_adc.c:
	* src/arch/x86/op_add.c:
	* src/arch/x86/op_and.c:
	* src/arch/x86/op_call.c:
	* src/arch/x86/op_cmp.c:
	* src/arch/x86/opcodes.h:
	* src/arch/x86/op_dec.c:
	* src/arch/x86/operand.c:
	* src/arch/x86/operand.h:
	* src/arch/x86/op_inc.c:
	* src/arch/x86/op_int.c:
	* src/arch/x86/op_jump.c:
	* src/arch/x86/op_lea.c:
	* src/arch/x86/op_mov.c:
	* src/arch/x86/op_or.c:
	* src/arch/x86/op_pop.c:
	* src/arch/x86/op_push.c:
	* src/arch/x86/op_sar.c:
	* src/arch/x86/op_sbb.c:
	* src/arch/x86/op_sub.c:
	* src/arch/x86/op_test.c:
	* src/arch/x86/op_xor.c:
	* src/arch/x86/processor.c:
	* src/arch/x86/processor.h:
	Centralize all the code used to decode instructions. Rename enumerations
	and functions according to the handled operands.

2008-09-16  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/x86/op_adc.c:
	* src/arch/x86/op_add.c:
	* src/arch/x86/op_and.c:
	* src/arch/x86/op_call.c:
	* src/arch/x86/opcodes.h:
	* src/arch/x86/op_dec.c:
	* src/arch/x86/op_hlt.c:
	* src/arch/x86/op_inc.c:
	* src/arch/x86/op_int.c:
	* src/arch/x86/op_jump.c:
	* src/arch/x86/op_lea.c:
	* src/arch/x86/op_leave.c:
	* src/arch/x86/op_mov.c:
	* src/arch/x86/op_nop.c:
	* src/arch/x86/op_or.c:
	* src/arch/x86/op_pop.c:
	* src/arch/x86/op_push.c:
	* src/arch/x86/op_ret.c:
	* src/arch/x86/op_sbb.c:
	* src/arch/x86/op_sub.c:
	* src/arch/x86/op_test.c:
	* src/arch/x86/op_xor.c:
	* src/arch/x86/processor.c:
	Add a 'x86_' to all functions decoding opcodes.

2008-09-14  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/operand.c:
	* src/arch/operand.h:
	Add an alternate function to read immediate values.

	* src/arch/processor.c:
	Print a message when decoding unknown opcode.

	* src/arch/x86/instruction.h:
	Register new identifiers for the following opcodes: add, call, cmp, je,
	jne, jmp, mov, sar and sub.

	* src/arch/x86/Makefile.am:
	Add op_cmp.c, op_jump.c and op_sar.c to libarchx86_a_SOURCES.

	* src/arch/x86/op_add.c:
	* src/arch/x86/op_call.c:
	Improve the support of these opcodes.

	* src/arch/x86/op_cmp.c:
	New entry: handle some cmp opcodes.

	* src/arch/x86/opcodes.h:
	Register new functions for the following opcodes: add, call, cmp, je,
	jne, jmp, mov, sar and sub.

	* src/arch/x86/operand.c:
	* src/arch/x86/operand.h:
	Fix some mistakes when reading rm8 operands and add a way to read the
	rel8 one.

	* src/arch/x86/op_jump.c:
	New entry: handle some jump opcodes.

	* src/arch/x86/op_mov.c:
	Improve the support of this opcode.

	* src/arch/x86/op_sar.c:
	New entry: handle one sar opcode.

	* src/arch/x86/op_sub.c:
	* src/arch/x86/op_test.c:
	Improve the support of these opcodes.

	* src/arch/x86/processor.c:
	Decode the new instructions. Fix a mistake for X86_OP_PUSH_CONTENT.

2008-09-12  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/processor.c:
	* src/arch/processor.h:
	* src/arch/processor-int.h:
	* src/arch/x86/processor.c:
	Try to resolve symbols for some kind of addresses.

	* src/binary.c:
	Store in the code snippet the used format.

	* src/format/elf/e_elf.c:
	* src/format/elf/e_elf.h:
	* src/format/exe_format.c:
	* src/format/exe_format.h:
	* src/format/exe_format-int.h:
	Provide capabilities to resolve symbols for given addresses.

	* src/gtksnippet.c:
	* src/gtksnippet.h:
	Add a way to register the used format.

2008-09-10  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/operand-int.h:
	Add a new type of operand for the addresses on the data segment (X86).

	* src/arch/x86/instruction.h:
	* src/arch/x86/opcodes.h:
	Handle two more opcodes (mov: 0xa0 and 0xa1).

	* src/arch/x86/operand.c:
	* src/arch/x86/operand.h:
	Support the 'moffs' type of operand.

	* src/arch/x86/op_mov.c:
	* src/arch/x86/processor.c:
	Handle two more opcodes (mov: 0xa0 and 0xa1).

2008-09-09  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/x86/instruction.h:
	Handle four kinds of the 'test' opcode.

	* src/arch/x86/Makefile.am:
	Add op_test.c to libarchx86_a_SOURCES.

	* src/arch/x86/opcodes.h:
	Register the new decoding functions.

	* src/arch/x86/operand.c:
	* src/arch/x86/operand.h:
	Handle the r/m information in a clever way.

	* src/arch/x86/op_mov.c:
	Reorganize the code ; this must be improved.

	* src/arch/x86/processor.c:
	Register the new decoding functions.

2008-09-07  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/x86/op_lea.c:
	* src/arch/x86/op_mov.c:
	* src/arch/x86/op_push.c:
	* src/arch/x86/processor.c:
	Better handle the case where decoding fails.

2008-09-06  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/x86/instruction.h:
	Add more support for lea and push opcodes.

	* src/arch/x86/Makefile.am:
	Add op_lea.c to libarchx86_a_SOURCES.

	* src/arch/x86/opcodes.h:
	Add more support for lea and push opcodes.

	* src/arch/x86/op_lea.c:
	New entry: support the lea opcode.

	* src/arch/x86/op_push.c:
	* src/arch/x86/processor.c:
	Add more support for lea and push opcodes.

2008-09-06  Cyrille Bagard <nocbos@gmail.com>

	* src/binary.c:
	* src/binary.h:
	Display found symbols when loading binary data.

	* src/editor.c:
	Use the new GTK components.

	* src/format/elf/e_elf.c:
	* src/format/elf/e_elf.h:
	* src/format/exe_format.c:
	* src/format/exe_format.h:
	* src/format/exe_format-int.h:
	Provide the needed functions to access the found symbols.

	* src/gtkcodeview.c:
	* src/gtkcodeview.h:
	New entries: provide a support for code snippets.

	* src/gtksnippet.c:
	* src/gtksnippet.h:
	Give the vertical position of a given address.

	* src/Makefile.am:
	Add gtkcodeview.[ch] and pan_symbols.[ch] to openida_SOURCES.

	* src/pan_symbols.c:
	* src/pan_symbols.h:
	New entries: add a panel allowing to browse found symbols.

2008-08-31  Cyrille Bagard <nocbos@gmail.com>

	* src/binary.c:
	Display the found [and sorted] symbols. 

	* src/format/elf/e_elf.c:
	Load the ELF symbols.

	* src/format/elf/elf-int.h:
	Define an ELF symbol (name and address).

	* src/format/elf/Makefile.am:
	Add symbol.[ch] to libformatelf_a_SOURCES.

	* src/format/elf/symbol.c:
	* src/format/elf/symbol.h:
	New entries: look for symbols of function.

	* src/gtksnippet.c:
	* src/gtksnippet.h:
	Add a way to compare two lines of code.

2008-08-31  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/x86/instruction.h:
	* src/arch/x86/opcodes.h:
	Handle the new opcodes.

	* src/arch/x86/operand.c:
	* src/arch/x86/operand.h:
	Load complex content using the SIB (Scale*Index+Base) byte. The code
	must be cleaned.

	* src/arch/x86/op_mov.c:
	Support the 'mov' opcode from/to memory locations.

	* src/arch/x86/processor.c:
	Handle the new opcodes.

	* src/editor.c:
	Extend the size of the editor.

	* src/Makefile.am:
	Add -lm to openida_LDFLAGS.

2008-08-24  Cyrille Bagard <nocbos@gmail.com>

	* src/binary.c:
	Remove unused code. Get and insert comments into code.

	* src/format/dwarf/d_dwarf.c:
	* src/format/dwarf/d_dwarf.h:
	Provide comments for all registered debug functions.

	* src/gtksnippet.c:
	* src/gtksnippet.h:
	Better handle the code lines.

2008-08-24  Cyrille Bagard <nocbos@gmail.com>

	* src/format/dwarf/abbrev.c:
	* src/format/dwarf/abbrev.h:
	Remove old code. Add a function to test if an attribute exists.

	* src/format/dwarf/dwarf-int.h:
	Typo in the debug functions array definition.

	* src/format/dwarf/info.c:
	Clean the code. Register found debug functions. Handle the void type.

2008-08-23  Cyrille Bagard <nocbos@gmail.com>

	* src/format/dwarf/abbrev.c:
	Support the DW_FORM_sdata and DW_FORM_udata values.

	* src/format/dwarf/info.c:
	Support the structure and enumeration types.

2008-08-22  Cyrille Bagard <nocbos@gmail.com>

	* src/binary.c:
	Skip the GUI display.

	* src/format/dwarf/abbrev.c:
	* src/format/dwarf/abbrev.h:
	Make abbreviation codes unsigned. Clean the code. Add the ability to not
	update the reading position when reading abbreviation attributes.

	* src/format/dwarf/dwarf-int.h:
	Add some definitions for registered prototypes of functions.

	* src/format/dwarf/info.c:
	Make a first try to get all registered prototypes of functions.

	* src/format/dwarf/utils.c:
	* src/format/dwarf/utils.h:
	Add the ability to not update the reading position when decoding
	[U]LEB128. Fix a bug when decoding [U]LEB128 numbers.

2008-08-17  Cyrille Bagard <nocbos@gmail.com>

	* src/format/dwarf/abbrev.c:
	* src/format/dwarf/abbrev.h:
	Add several functions to process the parsed abbreviations.

	* src/format/dwarf/d_dwarf.c:
	Improve the loading thanks to the new features.

	* src/format/dwarf/dwarf-int.h:
	Specify a format (32 or 64 bits) and refine the abbreviation definition.

	* src/format/dwarf/info.c:
	* src/format/dwarf/info.h:
	New entries: look for prototyped functions using the registered
	abbreviations.

	* src/format/dwarf/Makefile.am:
	Add info.[ch] to libformatdwarf_a_SOURCES.

	* src/format/dwarf/utils.c:
	* src/format/dwarf/utils.h:
	Read more values: uleb128, unit length, uhalf, offset and address size.

2008-08-10  Cyrille Bagard <nocbos@gmail.com>

	* src/format/dwarf/abbrev.c:
	* src/format/dwarf/abbrev.h:
	Read all the DWARF abbreviations.

	* src/format/dwarf/dwarf_def.h:
	* src/format/dwarf/dwarf-int.h:
	Refine the DWARF internals.

	* src/format/dwarf/Makefile.am:
	Add abbrev.[ch], dwarf_def.h and utils.[ch] to libformatdwarf_a_SOURCES.

	* src/format/dwarf/utils.c:
	* src/format/dwarf/utils.h:
	Add a function to read LEB128 numbers, for convenience.

2008-08-08  Cyrille Bagard <nocbos@gmail.com>

	* configure.ac:
	Add src/format/dwarf/Makefile to the list of files to create.

	* src/binary.c:
	Update the way data is loaded.

	* src/format/dbg_format.c:
	* src/format/dbg_format.h:
	* src/format/dbg_format-int.h:
	New entries: define a generic interface for debug formats.

	* src/format/dwarf/abbrev.c:
	* src/format/dwarf/abbrev.h:
	* src/format/dwarf/d_dwarf.c:
	* src/format/dwarf/d_dwarf.h:
	* src/format/dwarf/dwarf-int.h:
	* src/format/dwarf/Makefile.am:
	New entries: prepare to handle the DWARF debug format.

	* src/format/elf/e_elf.c:
	* src/format/elf/e_elf.h:
	* src/format/elf/elf-int.h:
	New entries: better handle the ELF format.

	* src/format/elf/format_elf.c:
	* src/format/elf/format_elf.h:
	Deleted entries: renamed to e_elf.[ch].

	* src/format/elf/Makefile.am:
	Add e_elf.[ch], elf-int.h and section.[ch] to libformatelf_a_SOURCES.
	Remove format_elf.[ch].

	* src/format/elf/section.c:
	* src/format/elf/section.h:
	New entries: read sections in an ELF file.

	* src/format/exe_format.c:
	* src/format/exe_format.h:
	* src/format/exe_format-int.h:
	New entries: define a generic interface for executable formats.

	* src/format/Makefile.am:
	Add dwarf to SUBDIRS and exe_format.[ch], exe_format-int.h,
	dbg_format.[ch], dbg_format-int.h to libformat_a_SOURCES.

	* src/Makefile.am:
	Add format/libformat.a and format/dwarf/libformatdwarf.a  to openida_LDADD.

2008-08-05  Cyrille Bagard <nocbos@gmail.com>

	* src/gtksnippet.c:
	* src/gtksnippet.h:
	Define a margin for setting breakpoints.

2008-08-03  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/x86/instruction.h:
	Remove all the identifiers for the prefix '0x66'.

	* src/arch/x86/Makefile.am:
	Add op_(adc|add|and|or|sbb|sub|xor).c to libarchx86_a_SOURCES.

	* src/arch/x86/op_adc.c:
	* src/arch/x86/op_add.c:
	* src/arch/x86/op_and.c:
	New entries: support more opcodes.

	* src/arch/x86/opcodes.h:
	Register the new opcodes.

	* src/arch/x86/operand.c:
	* src/arch/x86/operand.h:
	Read registers from the ModR/M encoding.

	* src/arch/x86/op_mov.c:
	Support the 'mov' opcode from a register to another one.

	* src/arch/x86/op_or.c:
	* src/arch/x86/op_sbb.c:
	* src/arch/x86/op_sub.c:
	* src/arch/x86/op_xor.c:
	New entries: support more opcodes.

	* src/arch/x86/processor.c:
	Handle opcode extension. Improve the way that instructions with prefix
	are handled, and thus decrease the amount of lines of code.

2008-08-01  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/x86/instruction.h:
	Register the new opcodes.

	* src/arch/x86/Makefile.am:
	Add op_(leave|ret).c to libarchx86_a_SOURCES.

	* src/arch/x86/opcodes.h:
	Register the new opcodes.

	* src/arch/x86/op_leave.c:
	* src/arch/x86/op_ret.c:
	New entries: handle the 'leave' and 'ret' opcodes.

	* src/arch/x86/processor.c:
	Register the new opcodes. Avoid wrong warning messages.

2008-07-31  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/operand.c:
	* src/arch/operand.h:
	Read relative immediate operands.

	* src/arch/operand-int.h:
	Typo.

	* src/arch/processor.c:
	* src/arch/processor.h:
	Update the code: use the virtual offset.

	* src/arch/processor-int.h:
	* src/arch/x86/instruction.h:
	Support new instructions: X86_OP_PUSH_IMM(32|16) and X86_OP_CALL.

	* src/arch/x86/Makefile.am:
	Add op_call.c to libarchx86_a_SOURCES.

	* src/arch/x86/op_call.c:
	New entry: Handle the virtual offset ; fix the operand-size overriding.

	* src/arch/x86/opcodes.h:
	* src/arch/x86/op_dec.c:
	* src/arch/x86/op_hlt.c:
	* src/arch/x86/op_inc.c:
	* src/arch/x86/op_int.c:
	* src/arch/x86/op_mov.c:
	* src/arch/x86/op_nop.c:
	Handle the virtual offset ; fix the operand-size overriding.

	* src/arch/x86/op_pop.c:
	* src/arch/x86/op_push.c:
	Handle the virtual offset ; fix the operand-size overriding.
	Handle immediate values.

	* src/arch/x86/processor.c:
	* src/arch/x86/processor.h:
	Handle the virtual offset ; fix the operand-size overriding.

	* src/binary.c:
	Provide the virtual offset when decoding.

	* src/format/elf/format_elf.c:
	* src/format/elf/format_elf.h:
	Provide the virtual offset when reading ELF.

2008-07-30  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/x86/instruction.h:
	Register new opcodes.

	* src/arch/x86/Makefile.am:
	Add op_(dec|hlt|inc|pop|push).c to libarchx86_a_SOURCES.

	* src/arch/x86/opcodes.h:
	Register new opcodes.

	* src/arch/x86/op_dec.c:
	Register this new opcode.

	* src/arch/x86/operand.c:
	* src/arch/x86/operand.h:
	Fix a mistake: define a base when reading the target register.

	* src/arch/x86/op_hlt.c:
	* src/arch/x86/op_inc.c:
	Register these new opcodes.

	* src/arch/x86/op_mov.c:
	Update the call to x86_create_reg1632_operand().

	* src/arch/x86/op_nop.c:
	Typo.

	* src/arch/x86/op_pop.c:
	* src/arch/x86/op_push.c:
	Register these new opcodes.

	* src/arch/x86/processor.c:
	Register the new opcodes and fix a bug with X86_OP_MOV_CX (s/D/C).

	* src/binary.c:
	Load the content of the file '/tmp/hello'.

	* src/format/elf/format_elf.c:
	* src/format/elf/format_elf.h:
	Look for the executable part of an ELF file.

2008-07-29  Cyrille Bagard <nocbos@gmail.com>

	* src/binary.c:
	Increase the length of the input code.

	* src/editor.c:
	Fix a warning about the GtkScrolledWindow.

	* src/gtksnippet.c:
	Adapt the size of the GtkSnippet widget. Define a white background.

2008-07-28  Cyrille Bagard <nocbos@gmail.com>

	* src/arch/operand.c:
	Fix a bug when reading immediate values (|| != |).

	* src/binary.c:
	Map the content of a given file into memory.

2008-07-27  Cyrille Bagard <nocbos@gmail.com>

	* configure.ac:
	Forget to commit last time.

	* src/arch/instruction.c:
	* src/arch/instruction.h:
	Change the data type (char -> uint8_t)  and update for the new internal
	structure.

	* src/arch/instruction-int.h:
	Change the definition of the asm_instr structure.

	* src/arch/operand.c:
	* src/arch/operand.h:
	Manage in a generic way 'db' and immediate values.

	* src/arch/operand-int.h:
	Refine the operand description.

	* src/arch/processor.c:
	* src/arch/processor.h:
	* src/arch/processor-int.h:
	Change the data type (char -> uint8_t) and handle the syntax.

	* src/arch/x86/instruction.h:
	Add new opcodes and support prefixes.

	* src/arch/x86/Makefile.am:
	Add op_nop.c, op_mov.c and operand.[ch] to libarchx86_a_SOURCES.

	* src/arch/x86/opcodes.h:
	Keep the list up to date.

	* src/arch/x86/operand.c:
	* src/arch/x86/operand.h:
	New entries: support some x86 specific operands.

	* src/arch/x86/op_int.c:
	Change the data type (char -> uint8_t)  and update for the new internal
	structure.

	* src/arch/x86/op_mov.c:
	* src/arch/x86/op_nop.c:
	New entries: Add these two new operands.

	* src/arch/x86/processor.c:
	Change the data type (char -> uint8_t) and handle the syntax. Support
	opcode prefixes and new opcodes. Clean the code for fetching instructions
	and the one for printing them.

	* src/binary.c:
	Change the data type (char -> uint8_t).

	* src/gtksnippet.c:
	Ask for a given syntax (Intel).

2008-07-27  Cyrille Bagard <nocbos@gmail.com>

	* configure.ac:
	Remove AC_PROG_RANLIB in favor of AC_PROG_LIBTOOL. Add AM_PROG_CC_C_O
	and schedule the creation of the new Makefiles.

	* src/arch/instruction.c:
	* src/arch/instruction.h:
	* src/arch/instruction-int.h:
	* src/arch/Makefile.am:
	* src/arch/operand.c:
	* src/arch/operand.h:
	* src/arch/operand-int.h:
	* src/arch/processor.c:
	* src/arch/processor.h:
	* src/arch/processor-int.h:
	* src/arch/x86/instruction.h:
	* src/arch/x86/Makefile.am:
	* src/arch/x86/opcodes.h:
	* src/arch/x86/op_int.c:
	* src/arch/x86/processor.c:
	* src/arch/x86/processor.h:
	New entries: parse x86 binary data and display the result.

	* src/binary.c:
	* src/binary.h:
	New entries: load a basic ASM content.

	* src/editor.c:
	Set some fixed fonts and use the new code snippet. Update the GPL header
	(Firebox Tools -> OpenIDA, version 2 -> version 3).

	* src/format/elf/format_elf.c:
	* src/format/elf/format_elf.h:
	* src/format/elf/Makefile.am:
	* src/format/Makefile.am:
	New entries: empty files.

	* src/gtksnippet.c:
	* src/gtksnippet.h:
	New entries: from an example from GTK.org, display assembly content.

	* src/Makefile.am:
	Add binary.[ch] and gtksnippet.[cg] files to openida_SOURCES and internal
	libraries to openida_LDADD.

2008-07-23  Cyrille Bagard <nocbos@gmail.com>

	* AUTHORS:
	* ChangeLog:
	* configure.ac:
	* Makefile.am:
	* NEWS:
	* po/Makevars:
	* po/POTFILES.in:
	* README:
	* src/editor.c:
	* src/Makefile.am:
	Initial commit. State of the program submitted to Gna!.