Previous 15994 Revisions Next

r6469 Thursday 26th November, 2009 at 21:46:23 UTC by Robbbert
[GLASGOW] Simplified mouse logic. No longer allowed to put a piece onto an occupied square.
[src/mess/drivers]glasgow.c

src/mess/drivers/glasgow.c
r6468r6469
162162   board_row++;
163163   board_row &= 7;
164164
165   /* See if any pieces moved on the board */
165   /* See if we are moving a piece */
166166   data = input_port_read(space->machine, keynames[board_row]);
167167
168168   if ((data != 0xff) && (!mouse_down))
169169   {
170      /* Moving a white piece onto a blank, or taking a black piece */
171      if ((mouse_hold > 6) && (m_board[board_row][pos_to_num(data)].piece < 7))
170      /* Moving a piece onto a blank */
171      if ((mouse_hold) && (!m_board[board_row][pos_to_num(data)].piece))
172172      {
173173         m_board[board_row][pos_to_num(data)].piece = mouse_hold;
174174         mouse_hold = 0;
175175      }
176176      else
177      /* Moving a black piece onto a blank, or taking a white piece */
178      if ((mouse_hold) && (mouse_hold < 7)
179         && ((m_board[board_row][pos_to_num(data)].piece > 6) || (!(m_board[board_row][pos_to_num(data)].piece))))
177      /* Picking up a piece */
178      if ((!mouse_hold) && (m_board[board_row][pos_to_num(data)].piece))
180179      {
181         m_board[board_row][pos_to_num(data)].piece = mouse_hold;
182         mouse_hold = 0;
183      }
184      else
185      /* Picking up a white piece */
186      if (m_board[board_row][pos_to_num(data)].piece > 6)
187      {
188180         mouse_hold = m_board[board_row][pos_to_num(data)].piece;
189181         m_board[board_row][pos_to_num(data)].piece = 0;
190182      }
191      else
192      /* Picking up a black piece */
193      if ((m_board[board_row][pos_to_num(data)].piece) && (m_board[board_row][pos_to_num(data)].piece < 7))
194      {
195         mouse_hold = m_board[board_row][pos_to_num(data)].piece;
196         m_board[board_row][pos_to_num(data)].piece = 0;
197      }
198183
199184      mouse_down = board_row + 1;
200185

Previous 15994 Revisions Next


© 1998-2018 The MESS Team