اطلاعات این پروژه از وب سایت برنامه جو برداشته شده است: http://www.barnamejoo.com
در بخش disassembler ، برنامه یک سری کد زبان ماشین (0 و 1) گرفته و (با فرض اینکه کُد کامپایل شده و درست است و ران میشود) آنرا بدستورات زبان اسمبلی تبدیل میکند.
البته تمام دستورات اسمبلی مورد نیاز نیست و تنها 20 دستور خاص برای این پروژه کافیست که عبارتند از mov، add، sub، push، pop، و jump بهمراه دو جامپ شرطی انتخابی، loop بهمراه یک لوپ شرطی انتخابی، call برای فراخوانی زیربرنامه ها، int برای فراخوانی وقفه ها، بعلاوه ی 8 دستور متفرقه انتخابی)
بخش دیباگر درواقع مانند یک gdb عمل نموده و دستورات اسمبلی که از بخش disassembler بدست آمده را ران کرده و با قراردادن break point در یک خط موردنظر از برنامه، آن تعداد خط را بررسی و ران کرده و اعلام میکند که چه تغییراتی ایجاد شده و محتویات رجیسترها درحال حاضر چیست