![]() ![]() It can be configured by BIOS through a large set of internal registers, is able to interrupt SUB-CPU in order to signal a new incoming data block or end of data transfer.ĪSIC registers: approximately 256 16-bit registers which are used to configure each part of Sega CD hardware, interrupts, timers, memory mode, etc and communicate with other controllers, including communication between the two CPUs. It uses 16k of external RAM buffer to store CD data blocks (2352 bytes/blocks) and is able to read a new block each 1/75s (CD drive speed is 1x). When a data track is played, it is sent to CDC unit for error correction and transfer to the SUB-CPU.ĬDC: this is CD Data Controller, which performs decoding of data received from CDD, error correction and data blocks transfer to the host, which is SUB-CPU side. When an audio track is played, it is sent to CD DAC & Fader unit at the rate of 44100hz. The chip understands a limited set of commands, from which all are not documented completely but the most important are known. The chip includes 64k of external RAM for storing waveform data and a set of registers to configure panning, volume, output frequency, etc.ĬDD: this is CD Drive processor which receives command from SUB-CPU BIOS, such as reading TOC, open tray, start playing a track, pause, etc. PCM Chip: this is a configurable sound chip which is able to render up to 8 stereo channels of PCM data. It is fully configurable through a set of internal registers. From a source screen map in memory, the chip transform graphics and make them available in Mega Drive sprite format, so they can be displayed by Mega Drive VDP. #LETHAL ENFORCERS 2 SEGA CD BIN CUE FULL SIZE#Graphics Chip: Mega CD ASIC can perform rotation & scaling operations in its Word-RAM when configured to full size mode. #LETHAL ENFORCERS 2 SEGA CD BIN CUE CODE#But this can also be used to run code for any of the two CPUs. This is generally used to make graphics data from the CD or from the Graphics Chip available to the MAIN CPU side, since only Mega Drive VDP can display stuff. There is also 2 banks of 128K Word-RAM which can either be split to each CPU side or assigned entirely (256K total) to one CPU or another, depending on the mode. Mega Drive MAIN CPU can access this RAM using banks-witching, for example, in order to copy SUB-CPU program & data on startup. Work RAM: 512K Prg-RAM which is used to hold SUB-CPU side program and data. SUB-CPU: an additional 68000 CPU, similar to the one used in Mega Drive hardware but running slightly faster, at 12.5 Mhzīackup RAM: 8k of battery RAM used to store game data, accessible only from SUB-CPUĬartridge RAM: up to 512K of battery RAM used to store game data, accessible only from cartridge port by MAIN-CPU This might be interesting to a few people. I thought I should list here all the things that needed to be emulated as many people think that Mega CD is, well, just a CD. Graphics remaining bug are now fixed and games do not hangs anymore, which is good :-) On real hardware, once the limit is reached, data coming from CD drive is written to the beginning of the buffer.Īnyway, I think I reached the point where games are running fine and everything important is emulated. Interestingly, it seems that Gens/Picodrive are cheating with the CD buffer size by increasing it to 64k when it's only 16k in reality, so buffer overrun never occurs. I fixed another stupid bug with CD buffer writes. ![]() ![]() If it appears that the fastest is to have every tracks to be converted (by user, by emulator on startup or by an external app) in wii native format then so be it.Ĭomment # 41 originally posted by ekeeke31 on T21:46:16.000Z: It will be a compromise between decompression processing time and slow access time bound to external device if the track cannot fit in wii memory. I already know about all these stuff and there is still a lot to do before arguing what is the best, etc.Īlso, to be clear, my goal is not to support all existing or possibly best lossless audio format, it's to find the most optimized way to play audio tracks on Wii. As long as the audio track length is the same, it will play the same.īut please don't derail this into a discussion about audio format, there are already many places on internet for you to discuss that. Indeed, it's not as if CD hardware was needing cycle-accurate audio, it does not modify the tracks, it's basically just a bunch of command that do PLAY, STOP or SEEK, in regard to time unit, not cycles or stream byte position like data tracks. I actually think it will be way more optimized to manually resample tracks to wii output samplerate (48hz). That's the resampler i already use for FM chip, it was actually written by Shai Green, author of NTSC filters. Comment # 34 originally posted by ekeeke31 on T12:40:24.000Z: ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |