MOS 6502 شبیه ساز مرتب کردن بر اساس شبیه ساز برای یک تراشه 6502 است. وجود دارد تقریبا هیچ چیزی به غیر از CPU (عملیات BCD منفی). آن را نیز به عهده دارد هیچ توجهی به زمان دستورالعمل.
در حالی که (جدا از این دو چیز) آن را با موفقیت شبیه سازی CPU چند معایب طراحی، که به من منجر به ادامه آن وجود دارد:
- من آن را در C ++ نوشت.
به عنوان 6502 تا به حال هیچ اتوبوس اختصاص داده IO، همه چیز را از طریق حافظه انجام شد. من تا به حال ایده داشتن یک کلاس مجازی خالص که ارائه یک رابط عمومی، پس از آن که من دستگاه در فضای حافظه نشستن نوشت، آنها فقط می تواند باطل بخشهایی از آن، و یا تله می نویسد و یا چیزی.
در حالی که نوشتن این، من نگه داشته شدن احساس من باید آن را در asm نوشته شده به جای به خصوص برای دستکاری پرچم ها و چرخش ها و مسائل. (به عنوان من می توانم فقط چرخش AL، به عنوان مثال، به جای ظروف سرباز یا مسافر من در C ++ کد داشته باشد.
- در رمزگشایی دستورالعملها درهم و برهم.
من در اصل مجموعه ای از به رمزگشایی دستورالعمل به درستی، اما تعداد زیادی از استثنا به سیستم استفاده می شود وجود دارد (به خصوص اگر من در نظر گرفته شده برای حمایت از 65C02 برای مثال). این decended به یک دستور switch عظیم. من تقریبا در نظر گرفته تقسیم آن را به فایل های کوچکتر، و فقط آنها را به # شامل در وسط، فقط به آن را managable تر است.
همچنین، به عنوان آنها را در نظم عددی نیست (با توجه به نوع، و یا حالت آدرس دهی گروه بندی، می تواند دستگاه های خودپرداز به یاد داشته باشید) آن را نمی خواهد به جدول پرش کامپایل. آیا با بهینه سازی در هر چند.
مهمترین چیزی که من را وادار به نوشتن این بود من بی بی سی-B در انبار در بر داشت، و احساس اضطراب سخت و ناگهانی از نوستالژی برای ساعت قوز بیش از آن را در پایین ترین حالت متن قطعنامه به هدر رفته (در حالت IIRC 7 برای صرفه جویی در رم). من تا به حال این ایده از نوشتن یک شبیه ساز NES یا بی بی سی، با این حال این کار را کرد که به مراتب می کنید.
از آن است که قالب تصویر خیلی ساده است. فایل باید> = 65536 کلمه در ادامه متن (64K) و است که به سادگی تصویر حافظه برای سیستم (اتوبوس آدرس 16 بیتی). است یک نوع عجیب و غریب از ASCII نمایش متن در 0x200، که به اندازه کافی خوب برای خارج می گردند یک رشته به وجود دارد. آن را به عنوان فقط با هم در فضای 6 ساعت یا بیشتر پرتاب شد (زمان زیادی برای انجام دستور switch) آن را بسیار thouroughly مستند، اما نه هی.
جزئیات نرم افزار:
نظر یافت نشد