The binary file for the Saturn version contains some snippets of source code for some reason (padding maybe??).
Please to enjoy: https://github.com/ryu-highabusa/doa1saturn/blob/main/00DOA.c
Edit: Found more (this section even has dev notes): https://github.com/ryu-highabusa/doa1saturn/blob/main/secondsource
Some really interesting stuff including how the DOA1 character.bins work (I think) under "act/cmd_std.dat"
This dev note talks about "milk base calculations," I'm assuming that's what the jiggle physics are called internally, haha.
Please to enjoy: https://github.com/ryu-highabusa/doa1saturn/blob/main/00DOA.c
Edit: Found more (this section even has dev notes): https://github.com/ryu-highabusa/doa1saturn/blob/main/secondsource
Some really interesting stuff including how the DOA1 character.bins work (I think) under "act/cmd_std.dat"
C:
# 37 "act/act.c" 2
# 1 "act/cmd_std.dat" 1
UINT16 CMD_SIT[] = {
(UINT16) 0x0A , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0010 , (UINT16) 0x10 ,
};
UINT16 CMD_FRONT[] = {
(UINT16) 0x01 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0040 , (UINT16) 0x10 ,
};
UINT16 CMD_BACK[] = {
(UINT16) 0x02 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0080 , (UINT16) 0x10 ,
};
UINT16 CMD_SIT_FRONT[] = {
(UINT16) 0x0B , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0040 | 0x0010 ) , (UINT16) 0x10 ,
};
UINT16 CMD_SIT_BACK[] = {
(UINT16) 0x0C , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0080 | 0x0010 ) , (UINT16) 0x10 ,
};
UINT16 CMD_DASH_FRONT[] = {
(UINT16) 0x03 , (UINT16) 0xFFFF ,
(UINT16) 0x0040 , (UINT16) 0x13 ,
(UINT16) 0x0200 | 0x0000 , (UINT16) 0x13 ,
(UINT16) 16 , (UINT16) 0x00 ,
(UINT16) 0x0040 , (UINT16) 0x10 ,
};
UINT16 CMD_DASH_BACK[] = {
(UINT16) 0x04 , (UINT16) 0xFFFF ,
(UINT16) 0x0080 , (UINT16) 0x13 ,
(UINT16) 0x0200 | 0x0000 , (UINT16) 0x13 ,
(UINT16) 10 , (UINT16) 0x00 ,
(UINT16) 0x0080 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_DASH_F1[] = {
(UINT16) 0x10 , (UINT16) 0xFFFF ,
(UINT16) (0x0040 | 0x0010 ) , (UINT16) 0x15 ,
(UINT16) 0x0200 | 0x0000 , (UINT16) 0x10 ,
(UINT16) 16 , (UINT16) 0x00 ,
(UINT16) (0x0040 | 0x0010 ) , (UINT16) 0x15 ,
};
UINT16 CMD_LO_DASH_B1[] = {
(UINT16) 0x11 , (UINT16) 0xFFFF ,
(UINT16) (0x0080 | 0x0010 ) , (UINT16) 0x15 ,
(UINT16) 0x0200 | 0x0000 , (UINT16) 0x10 ,
(UINT16) 10 , (UINT16) 0x00 ,
(UINT16) (0x0080 | 0x0010 ) , (UINT16) 0x15 ,
};
UINT16 CMD_LO_DASH_F2[] = {
(UINT16) 0x10 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0010 , (UINT16) 0x10 ,
(UINT16) (0x0080 | 0x0010 ) , (UINT16) (0x0040 | 0x0010 ) , (UINT16) 0x14 ,
(UINT16) 0x0010 , (UINT16) 0x10 ,
(UINT16) 16 , (UINT16) 0x00 ,
(UINT16) (0x0040 | 0x0010 ) , (UINT16) 0x10 ,
};
UINT16 CMD_LO_DASH_B2[] = {
(UINT16) 0x11 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0010 , (UINT16) 0x10 ,
(UINT16) (0x0040 | 0x0010 ) , (UINT16) (0x0080 | 0x0010 ) , (UINT16) 0x14 ,
(UINT16) 0x0010 , (UINT16) 0x10 ,
(UINT16) 16 , (UINT16) 0x00 ,
(UINT16) (0x0080 | 0x0010 ) , (UINT16) 0x10 ,
};
UINT16 CMD_RUN[] = {
(UINT16) 0x05 , (UINT16) 0xFFFF ,
(UINT16) 0x03 , (UINT16) 0x21 ,
(UINT16) 10 , (UINT16) 0x0040 , (UINT16) 0x12 ,
};
UINT16 CMD_TURN[] = {
(UINT16) 0x12 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0080 , (UINT16) 0x10 ,
(UINT16) 0x31 ,
};
UINT16 CMD_SIT_TURN[] = {
(UINT16) 0x13 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0080 | 0x0010 ) , (UINT16) 0x10 ,
(UINT16) 0x31 ,
};
UINT16 CMD_LO_JUMP_F[] = {
(UINT16) 0x14 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0040 | 0x0020 ) , (UINT16) 0x10 ,
};
UINT16 CMD_LO_JUMP_F2[] = {
(UINT16) 0x14 , (UINT16) 0xFFFF ,
(UINT16) (0x0040 | 0x0020 ) , (UINT16) 0x11 ,
};
UINT16 CMD_LO_JUMP_O[] = {
(UINT16) 0x15 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0020 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_JUMP_B[] = {
(UINT16) 0x16 , (UINT16) 0xFFFF ,
(UINT16) 0x2A ,
(UINT16) (0x0080 | 0x0020 ) , (UINT16) 0x10 ,
};
UINT16 CMD_LO_JUMP_B2[] = {
(UINT16) 0x16 , (UINT16) 0xFFFF ,
(UINT16) 0x2A ,
(UINT16) (0x0080 | 0x0020 ) , (UINT16) 0x11 ,
};
UINT16 CMD_SIDE_UP_H[] = {
(UINT16) 0x1E , (UINT16) 0xFFFF ,
(UINT16) 0x02 , (UINT16) 0x32 ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_UP_H_FR[] = {
(UINT16) 0x1E , (UINT16) 0xFFFF ,
(UINT16) 0x00 , (UINT16) 0x32 ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_UP_H_BK[] = {
(UINT16) 0x1E , (UINT16) 0xFFFF ,
(UINT16) 0x01 , (UINT16) 0x32 ,
(UINT16) 0x0200 | 0x0100 | 0x0020 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_UP_F[] = {
(UINT16) 0x1F , (UINT16) 0xFFFF ,
(UINT16) 0x02 , (UINT16) 0x32 ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_UP_F_FR[] = {
(UINT16) 0x1F , (UINT16) 0xFFFF ,
(UINT16) 0x00 , (UINT16) 0x32 ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_UP_F_BK[] = {
(UINT16) 0x1F , (UINT16) 0xFFFF ,
(UINT16) 0x01 , (UINT16) 0x32 ,
(UINT16) 0x0200 | 0x0100 | 0x0020 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_DOWN_H[] = {
(UINT16) 0x20 , (UINT16) 0xFFFF ,
(UINT16) 0x02 , (UINT16) 0x32 ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_DOWN_H_FR[] = {
(UINT16) 0x20 , (UINT16) 0xFFFF ,
(UINT16) 0x00 , (UINT16) 0x32 ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_DOWN_H_BK[] = {
(UINT16) 0x20 , (UINT16) 0xFFFF ,
(UINT16) 0x01 , (UINT16) 0x32 ,
(UINT16) 0x0200 | 0x0100 | 0x0020 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_DOWN_F[] = {
(UINT16) 0x21 , (UINT16) 0xFFFF ,
(UINT16) 0x02 , (UINT16) 0x32 ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_DOWN_F_FR[] = {
(UINT16) 0x21 , (UINT16) 0xFFFF ,
(UINT16) 0x00 , (UINT16) 0x32 ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_DOWN_F_BK[] = {
(UINT16) 0x21 , (UINT16) 0xFFFF ,
(UINT16) 0x01 , (UINT16) 0x32 ,
(UINT16) 0x0200 | 0x0100 | 0x0020 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_NORM_UP_H[] = {
(UINT16) 0x1A , (UINT16) 0xFFFF ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_NORM_UP_F[] = {
(UINT16) 0x1B , (UINT16) 0xFFFF ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_NORM_DOWN_H[] = {
(UINT16) 0x1C , (UINT16) 0xFFFF ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_NORM_DOWN_F[] = {
(UINT16) 0x1D , (UINT16) 0xFFFF ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_REAR_UP_H[] = {
(UINT16) 0x22 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0040 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_REAR_UP_F[] = {
(UINT16) 0x23 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0080 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_REAR_DOWN_H[] = {
(UINT16) 0x24 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0080 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_REAR_DOWN_F[] = {
(UINT16) 0x25 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0040 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_SIT_UP_H[] = {
(UINT16) 0x26 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_SIT_UP_F[] = {
(UINT16) 0x27 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_SIT_DOWN_H[] = {
(UINT16) 0x28 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_SIT_DOWN_F[] = {
(UINT16) 0x29 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_SIT_SIDE_UP_H[] = {
(UINT16) 0x2A , (UINT16) 0xFFFF ,
(UINT16) 0x1E , (UINT16) 0x29 ,
(UINT16) 0x2B ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
};
UINT16 CMD_SIT_SIDE_UP_F[] = {
(UINT16) 0x2B , (UINT16) 0xFFFF ,
(UINT16) 0x1F , (UINT16) 0x29 ,
(UINT16) 0x2B ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
};
UINT16 CMD_SIT_SIDE_DOWN_H[] = {
(UINT16) 0x2C , (UINT16) 0xFFFF ,
(UINT16) 0x20 , (UINT16) 0x29 ,
(UINT16) 0x2B ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
};
UINT16 CMD_SIT_SIDE_DOWN_F[] = {
(UINT16) 0x2D , (UINT16) 0xFFFF ,
(UINT16) 0x21 , (UINT16) 0x29 ,
(UINT16) 0x2B ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
};
UINT16 CMD_SIT_REAR_UP_H[] = {
(UINT16) 0x2E , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0040 | 0x0010 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_SIT_REAR_UP_F[] = {
(UINT16) 0x2F , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0080 | 0x0010 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_SIT_REAR_DOWN_H[] = {
(UINT16) 0x30 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0080 | 0x0010 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_SIT_REAR_DOWN_F[] = {
(UINT16) 0x31 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0040 | 0x0010 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_GRASP_HI[] = {
(UINT16) 0x40 , (UINT16) 0xFFFF ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_GRASP_MD1[] = {
(UINT16) 0x41 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0000 , (UINT16) 0x10 ,
(UINT16) 2 , (UINT16) 0x00 ,
(UINT16) (0x0080 | 0x0010 ) , (UINT16) 0x10 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_GRASP_MD2[] = {
(UINT16) 0x41 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0000 , (UINT16) 0x10 ,
(UINT16) 2 , (UINT16) 0x00 ,
(UINT16) (0x0040 | 0x0010 ) , (UINT16) 0x10 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_GRASP_LO[] = {
(UINT16) 0x42 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_GRASP_TRN_HI[] = {
(UINT16) 0x43 , (UINT16) 0xFFFF ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_GRASP_TRN_LO[] = {
(UINT16) 0x44 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0001 , (UINT16) 0x10 ,
};
UINT16 CMD_THROW_NML_SLIP[] = {
(UINT16) 0x4F , (UINT16) 0xFFFF ,
(UINT16) 0x4D , (UINT16) 0x22 ,
(UINT16) 10 , (UINT16) 0x00 ,
(UINT16) 0x0001 | 0x0002 , (UINT16) 0x11 ,
};
UINT16 CMD_STAND_P[] = {
(UINT16) 0x53 , (UINT16) 0xFFFF ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_MID_P[] = {
(UINT16) 0x54 , (UINT16) 0xFFFF ,
(UINT16) 0x2A ,
(UINT16) 0x0200 | (0x0040 | 0x0010 ) , (UINT16) 0x10 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_SIT_P[] = {
(UINT16) 0x55 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_STAND_K[] = {
(UINT16) 0x56 , (UINT16) 0xFFFF ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_MID_K[] = {
(UINT16) 0x57 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0040 | 0x0010 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_SIT_K[] = {
(UINT16) 0x58 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_STAND_SPK[] = {
(UINT16) 0x53 , (UINT16) 0xFFFF ,
(UINT16) 0x0001 | 0x0002 | 0x0004 , (UINT16) 0x11 ,
};
UINT16 CMD_STAND_SP[] = {
(UINT16) 0x53 , (UINT16) 0xFFFF ,
(UINT16) 0x0001 | 0x0002 , (UINT16) 0x11 ,
};
UINT16 CMD_STAND_PK[] = {
(UINT16) 0x53 , (UINT16) 0xFFFF ,
(UINT16) 0x0002 | 0x0004 , (UINT16) 0x11 ,
};
UINT16 CMD_STAND_SK[] = {
(UINT16) 0x56 , (UINT16) 0xFFFF ,
(UINT16) 0x0001 | 0x0004 , (UINT16) 0x11 ,
};
UINT16 CMD_SIT_SPK[] = {
(UINT16) 0x55 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0001 | 0x0002 | 0x0004 , (UINT16) 0x11 ,
};
UINT16 CMD_SIT_SP[] = {
(UINT16) 0x55 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0001 | 0x0002 , (UINT16) 0x11 ,
};
UINT16 CMD_SIT_PK[] = {
(UINT16) 0x55 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0002 | 0x0004 , (UINT16) 0x11 ,
};
UINT16 CMD_SIT_SK[] = {
(UINT16) 0x58 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0001 | 0x0004 , (UINT16) 0x11 ,
};
UINT16 CMD_TURN_P[] = {
(UINT16) 0x59 , (UINT16) 0xFFFF ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_TURN_P2[] = {
(UINT16) 0x59 , (UINT16) 0xFFFF ,
(UINT16) (0x0080 | 0x0020 ) , (UINT16) 0x11 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_TURN_MID_P[] = {
(UINT16) 0x5A , (UINT16) 0xFFFF ,
(UINT16) 0x0010 , (UINT16) 0x10 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_TURN_SIT_P[] = {
(UINT16) 0x5B , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_TURN_K[] = {
(UINT16) 0x5C , (UINT16) 0xFFFF ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_TURN_K2[] = {
(UINT16) 0x5C , (UINT16) 0xFFFF ,
(UINT16) (0x0080 | 0x0020 ) , (UINT16) 0x11 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_TURN_MID_K[] = {
(UINT16) 0x5D , (UINT16) 0xFFFF ,
(UINT16) 0x0010 , (UINT16) 0x10 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_TURN_SIT_K[] = {
(UINT16) 0x5E , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_TURN_SPK[] = {
(UINT16) 0x59 , (UINT16) 0xFFFF ,
(UINT16) 0x0001 | 0x0002 | 0x0004 , (UINT16) 0x11 ,
};
UINT16 CMD_TURN_SP[] = {
(UINT16) 0x59 , (UINT16) 0xFFFF ,
(UINT16) 0x0001 | 0x0002 , (UINT16) 0x11 ,
};
UINT16 CMD_TURN_PK[] = {
(UINT16) 0x59 , (UINT16) 0xFFFF ,
(UINT16) 0x0002 | 0x0004 , (UINT16) 0x11 ,
};
UINT16 CMD_TURN_SK[] = {
(UINT16) 0x5C , (UINT16) 0xFFFF ,
(UINT16) 0x0001 | 0x0004 , (UINT16) 0x11 ,
};
UINT16 CMD_TURN_SIT_SPK[] = {
(UINT16) 0x5B , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0001 | 0x0002 | 0x0004 , (UINT16) 0x11 ,
};
UINT16 CMD_TURN_SIT_SP[] = {
(UINT16) 0x5B , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0001 | 0x0002 , (UINT16) 0x11 ,
};
UINT16 CMD_TURN_SIT_PK[] = {
(UINT16) 0x5B , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0002 | 0x0004 , (UINT16) 0x11 ,
};
UINT16 CMD_TURN_SIT_SK[] = {
(UINT16) 0x5E , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0010 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0001 | 0x0004 , (UINT16) 0x11 ,
};
UINT16 CMD_LO_F_JMP_SYNC_P[] = {
(UINT16) 0x5F , (UINT16) 0xFFFF ,
(UINT16) 0x14 , (UINT16) 0x20 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_F_JMP_SYNC_K[] = {
(UINT16) 0x60 , (UINT16) 0xFFFF ,
(UINT16) 0x14 , (UINT16) 0x20 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_F_JMP_SYNC_P2[] = {
(UINT16) 0x5F , (UINT16) 0xFFFF ,
(UINT16) (0x0040 | 0x0020 ) , (UINT16) 0x11 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_F_JMP_SYNC_K2[] = {
(UINT16) 0x60 , (UINT16) 0xFFFF ,
(UINT16) (0x0040 | 0x0020 ) , (UINT16) 0x11 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_F_JMP_P[] = {
(UINT16) 0x65 , (UINT16) 0xFFFF ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_F_JMP_K[] = {
(UINT16) 0x66 , (UINT16) 0xFFFF ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_O_JMP_SYNC_P[] = {
(UINT16) 0x61 , (UINT16) 0xFFFF ,
(UINT16) 0x15 , (UINT16) 0x20 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_O_JMP_SYNC_K[] = {
(UINT16) 0x62 , (UINT16) 0xFFFF ,
(UINT16) 0x15 , (UINT16) 0x20 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_O_JMP_SYNC_P2[] = {
(UINT16) 0x61 , (UINT16) 0xFFFF ,
(UINT16) 0x0020 , (UINT16) 0x10 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_O_JMP_SYNC_K2[] = {
(UINT16) 0x62 , (UINT16) 0xFFFF ,
(UINT16) 0x0020 , (UINT16) 0x10 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_O_JMP_P[] = {
(UINT16) 0x67 , (UINT16) 0xFFFF ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_O_JMP_K[] = {
(UINT16) 0x68 , (UINT16) 0xFFFF ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_B_JMP_SYNC_P[] = {
(UINT16) 0x63 , (UINT16) 0xFFFF ,
(UINT16) 0x16 , (UINT16) 0x20 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_B_JMP_SYNC_K[] = {
(UINT16) 0x64 , (UINT16) 0xFFFF ,
(UINT16) 0x16 , (UINT16) 0x20 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_B_JMP_SYNC_P2[] = {
(UINT16) 0x63 , (UINT16) 0xFFFF ,
(UINT16) (0x0080 | 0x0020 ) , (UINT16) 0x11 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_B_JMP_SYNC_K2[] = {
(UINT16) 0x64 , (UINT16) 0xFFFF ,
(UINT16) (0x0080 | 0x0020 ) , (UINT16) 0x11 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_NML_UP_F_K[] = {
(UINT16) 0x73 , (UINT16) 0xFFFF ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_NML_UP_F_LK[] = {
(UINT16) 0x74 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0010 | 0x0100 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_NML_UP_H_K[] = {
(UINT16) 0x75 , (UINT16) 0xFFFF ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_NML_UP_H_LK[] = {
(UINT16) 0x76 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0010 | 0x0100 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_NML_DOWN_F_K[] = {
(UINT16) 0x77 , (UINT16) 0xFFFF ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_NML_DOWN_F_LK[] = {
(UINT16) 0x78 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0010 | 0x0100 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_NML_DOWN_H_K[] = {
(UINT16) 0x79 , (UINT16) 0xFFFF ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_NML_DOWN_H_LK[] = {
(UINT16) 0x7A , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0010 | 0x0100 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_UP_F_K[] = {
(UINT16) 0x7B , (UINT16) 0xFFFF ,
(UINT16) 0x1F , (UINT16) 0x21 ,
(UINT16) 60 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_UP_F_LK[] = {
(UINT16) 0x7C , (UINT16) 0xFFFF ,
(UINT16) 0x1F , (UINT16) 0x21 ,
(UINT16) 60 , (UINT16) 0x00 ,
(UINT16) 0x0200 | (0x0010 | 0x0100 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_UP_H_K[] = {
(UINT16) 0x7D , (UINT16) 0xFFFF ,
(UINT16) 0x1E , (UINT16) 0x21 ,
(UINT16) 60 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_UP_H_LK[] = {
(UINT16) 0x7E , (UINT16) 0xFFFF ,
(UINT16) 0x1E , (UINT16) 0x21 ,
(UINT16) 60 , (UINT16) 0x00 ,
(UINT16) 0x0200 | (0x0010 | 0x0100 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_DOWN_F_K[] = {
(UINT16) 0x7F , (UINT16) 0xFFFF ,
(UINT16) 0x21 , (UINT16) 0x21 ,
(UINT16) 60 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_DOWN_F_LK[] = {
(UINT16) 0x80 , (UINT16) 0xFFFF ,
(UINT16) 0x21 , (UINT16) 0x21 ,
(UINT16) 60 , (UINT16) 0x00 ,
(UINT16) 0x0200 | (0x0010 | 0x0100 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_DOWN_H_K[] = {
(UINT16) 0x81 , (UINT16) 0xFFFF ,
(UINT16) 0x20 , (UINT16) 0x21 ,
(UINT16) 60 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_SIDE_DOWN_H_LK[] = {
(UINT16) 0x82 , (UINT16) 0xFFFF ,
(UINT16) 0x20 , (UINT16) 0x21 ,
(UINT16) 60 , (UINT16) 0x00 ,
(UINT16) 0x0200 | (0x0010 | 0x0100 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_REAR_UP_F_K[] = {
(UINT16) 0x83 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0080 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_REAR_UP_F_LK[] = {
(UINT16) 0x84 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0080 | 0x0010 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_REAR_UP_H_K[] = {
(UINT16) 0x85 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0040 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_REAR_UP_H_LK[] = {
(UINT16) 0x86 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0040 | 0x0010 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_REAR_DOWN_F_K[] = {
(UINT16) 0x87 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0040 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_REAR_DOWN_F_LK[] = {
(UINT16) 0x88 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0040 | 0x0010 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_REAR_DOWN_H_K[] = {
(UINT16) 0x89 , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | 0x0100 | 0x0080 , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_REAR_DOWN_H_LK[] = {
(UINT16) 0x8A , (UINT16) 0xFFFF ,
(UINT16) 0x0200 | (0x0080 | 0x0010 ) , (UINT16) 0x10 ,
(UINT16) 1 , (UINT16) 0x00 ,
(UINT16) 0x0004 , (UINT16) 0x10 ,
};
UINT16 CMD_LO_D_ATTACK[] = {
(UINT16) 0x95 , (UINT16) 0xFFFF ,
(UINT16) 0x15 , (UINT16) 0x20 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
(UINT16) 0x26 ,
};
UINT16 CMD_LO_D_ATTACK2[] = {
(UINT16) 0x95 , (UINT16) 0xFFFF ,
(UINT16) 0x0020 , (UINT16) 0x10 ,
(UINT16) 6 , (UINT16) 0x00 ,
(UINT16) 0x0002 , (UINT16) 0x10 ,
(UINT16) 0x26 ,
};
This dev note talks about "milk base calculations," I'm assuming that's what the jiggle physics are called internally, haha.
C:
/******************************************************/
/*** ***/
/*** 機能 : 乳ベ-ス及び、乳頂点の座標算出 ***/
/*** ***/
/*** 作成日 : H8.12.05 ***/
/*** 作成者 : JUN ***/
/*** ***/
/*** プロトタイプ: void chi_pos_calc( ***/
/*** INT base_no ***/
/*** ) ***/
/*** 引数 : 乳ベ-スナンバ- ***/
/*** 戻り値 : Nothing ***/
/*** ***/
/******************************************************/
void chi_pos_calc(
struct chi_dat *chi_dat_p,
Uint8 ply_no,
INT base_no
)
{
INT i; /* ル-プ用変数 */
INT point_cnt;
Uint8 l_point_no; /* 作業頂点ナンバ- */
Uint8 l_pos_index; /* 作業頂点座標デ-タインデックス */
FIXED l_chi_pnt_dis;
void *l_ptr;
POINT *l_chi_point_plane;
POINT *l_pnt_dis_p;
Uint8 *l_pnt_no_p;
l_chi_point_plane = point_chest[ply_no];
l_pnt_no_p = chi_dat_p->pnt_no_p[base_no];
l_pnt_dis_p = chi_dat_p->pnt_dis_p[base_no];
for (i = 0; i < chi_dat_p->pnt_cnt[base_no]; i++) {
l_point_no = (Uint8)*l_pnt_no_p;
// l_chi_point_plane[l_point_no][X] /* ポリゴン頂点のX座標を更新 */
// = chi_point_ks_dis[base_no][i][X] /* */
// + chi_point[ply_no][base_no][X]; /* */
l_chi_point_plane[l_point_no][Y] /* ポリゴン頂点のY座標を更新 */
= l_pnt_dis_p[i][Y]
+ chi_point[ply_no][base_no][Y]; /* */
l_pnt_no_p++;
}
}/* chi_pos_calc() */
Last edited: