Search found 92 matches

by GManiac
Fri Mar 18, 2011 8:11 pm
Forum: Sound
Topic: New Documentation: An authoritative reference on the YM2612
Replies: 865
Views: 2148871

Question. Has MD2 REALLY higher precision DAC (>9 bits ) or not? TmEE co.(TM), can you make a test? Algo 7, TL about $3F, sine wave of any operator. Explanation: TL $40 = attenuation of 256 times. So, output of operator will be from -31 to +31. -31 asr 5 = -1 31 asr 5 = 0 Playing this sine wave on Y...
by GManiac
Fri Mar 04, 2011 11:49 am
Forum: Megadrive/Genesis
Topic: Does any sort of (user) OS or native assembler exist for MD?
Replies: 6
Views: 5846

I used PC + MD + cable. MD starts "loader" in ROM, which is awaiting for commands from PC. It loads my prog from PC to RAM and jumps to it. 64k of RAM was enough to my needs.
by GManiac
Tue Jan 11, 2011 8:34 pm
Forum: Megadrive/Genesis
Topic: SSP on sega.s
Replies: 9
Views: 5856

Code is very simple, what could I do wrong? Make your own tests. Something like this: MOVE x, A7 MOVE y, A0 MOVE A0, USP MOVE #$0700, SR ; (user mode) MOVE A7, A1 Then we monitor their values. To return to Supervisor Mode we must get any exception, change value of SR in stack frame and then RTE. Afa...
by GManiac
Tue Jan 11, 2011 1:15 pm
Forum: Megadrive/Genesis
Topic: SSP on sega.s
Replies: 9
Views: 5856

68k has no MSP and ISP and strange SPs, only USP and A7. I'll explain. I made tests on real HW. Initial value of SR is 2700. I did MOVE #$FFFF to SR and find out that SR has only one trace bit. Its value was A71F or something like this. I don't remember certain values, later I'll read my notes. Also...
by GManiac
Mon Nov 08, 2010 7:59 pm
Forum: Megadrive/Genesis
Topic: Handy colored M68k opcodes table
Replies: 6
Views: 5677

What do you mean? Originally, I used this table to write my own disassembler. I wrote it:
- for fun
- for my own purposes
- for some reason, which I wont't designate.
by GManiac
Sun Nov 07, 2010 11:42 am
Forum: Megadrive/Genesis
Topic: Handy colored M68k opcodes table
Replies: 6
Views: 5677

Print this tables on A3 in color. Very helpfull, specially for beginners. http://img183.imageshack.us/img183/2650/dsc0013g.th.jpg LOL. Good idea. This is pretty useful, I could understand most of the comments with my crappy Russian too ^^ I made marking 2.5 years ago, I should post this table at th...
by GManiac
Sat Nov 06, 2010 10:54 pm
Forum: Megadrive/Genesis
Topic: Handy colored M68k opcodes table
Replies: 6
Views: 5677

Handy colored M68k opcodes table

Hi, http://www.emu-land.net/forum/index.php?action=dlattach;topic=42330.0;attach=28007 This xls is originally made by HardWareMan many years ago. Later I fixed it a bit, added constraints and groupped ops in second page (for example, SHIFTS, IMM ops, etc.), and then I marked with color differencies ...
by GManiac
Wed Oct 27, 2010 1:58 pm
Forum: Megadrive/Genesis
Topic: Link at a specific address
Replies: 12
Views: 14642

You should declare you procedure in another section and then set base address of this section during linking. I don't familiar with linker options, all I know is how to assemble files with GNU toolchain. Something like this: m68k-elf-as.exe %1 -o %1.out -mcpu=68000 --register-prefix-optional m68k-el...
by GManiac
Thu Oct 07, 2010 4:16 pm
Forum: Megadrive/Genesis
Topic: 68k asm madness
Replies: 9
Views: 12485

maybe a1 is set after calling writeText function to new value, then you RTS to other address. Here: writeText: move.w (vdpFlags).w,-(sp) bset #2,(vdpFlags).w movem.l d0-d3/a0/a2,-(sp) .... movem.l (sp)+,d0-d3/a0/a2 move.w (sp)+,(vdpFlags).w rts But you missed this code behind ellipsis.
by GManiac
Thu Oct 07, 2010 3:59 pm
Forum: Megadrive/Genesis
Topic: 68k asm madness
Replies: 9
Views: 12485

movea.w #$B000,a0 is equal to I don't understand how the 68k does this... for me, loading a word to a0...a7/sp will result to 0000word, not FFFFword....perhaps it's my mistake ? Did you read M68k Programmer's Manual? Do you know about sign-extension? It means that if you extend operand to more byte...
by GManiac
Thu Oct 07, 2010 11:57 am
Forum: Megadrive/Genesis
Topic: 68k asm madness
Replies: 9
Views: 12485

movea.w #$B000,a0 is equal to movea.l #$FFFFB000,a0 movea.w #$FFFE,sp = movea.l #$FFFFFFFE,sp cmpa.w #$D03E,a0 = cmpa.l #$FFFFD03E,a0 Remember that 68k has 24 bit address wire, so decoding address from a0 will give you $00FFB000 and so on. bra *+4 What disasm do you use? IDA? I never saw such instru...
by GManiac
Mon Sep 27, 2010 9:06 am
Forum: Tools
Topic: move under IDA
Replies: 4
Views: 4344

Right address will be 0xFFFFB03A because of sign-extension. Job of disassembler is to show you the right address (0xFFFFB03A), it doesn't know about 24-bits address wire. And job of emulator is to implement address correctly, knowing about 24 bits, so emulator will get 0x00FFB03A. As to IDA I thnk t...
by GManiac
Wed Sep 22, 2010 5:13 pm
Forum: Sound
Topic: New Documentation: An authoritative reference on the YM2612
Replies: 865
Views: 2148871

I made a tons of tests on real MD to get understanding for myself how YM really works. Information which I could read (MAME's source, YM2608 manual, posts by Nemesis) didn't give me the "whole picture" of understanding. And of course oscillograms will tell more than cold numbers and C source. All of...
by GManiac
Tue Sep 14, 2010 11:34 am
Forum: Sound
Topic: New Documentation: An authoritative reference on the YM2612
Replies: 865
Views: 2148871

This would mean that not only the output of channel is limited from 14 to 9 bits but also the output of each of the 4 slots that makes a channel... and that overflow can occur is surprising: as I understand it, it means that in case of algorithm 7 for example, the sum of the four 9-bit operators ou...
by GManiac
Tue Sep 14, 2010 8:49 am
Forum: Sound
Topic: New Documentation: An authoritative reference on the YM2612
Replies: 865
Views: 2148871

I confirm that DAC and accumulator are 9 bits, and carriers are shifted BEFORE going to accumulator. With this we lose precision and get spare calculations: 4 shifts and 4 sums instead of 4 sums and 1 shift (algorithm 7). I don't know why they used this method. Regarding the PCM/DAC register, it is ...