Lets take a step back and look at everything that needs to happen for the 7210 to successfully send the data message *IDN? to another GPIB device.
1. Power is applied, hardware reset is unasserted, chip initialization is done, and pon is cleared by writing 0x00 to the AUXMR (offset 0x5)
2. The 7210 must become controller-in-charge. This is usually accomplished by writing the Set IFC (0x1E) command to the AUXMR. This implicitly asserts ATN.
3. The 7210 sends GPIB command bytes to address itself and another GPIB device for a data transfer. If the 7210 will send *IDN? to another device then it must address itself as a talker and the device as a listener. The specific GPIB command bytes are formed using the GPIB addresses of the 7210 and device.
4. The 7210 becomes a standby controller and implicitly unasserts ATN.
5. The 7210 is now a talker and sends the data message *IDN? to the device.
6. The 7210 becomes active controller (tca/tcs) and readresses itself to listen and the device to talk.
7. The 7210 becomes a standby controller, and the device is able to respond with some data message (if it is 488.2 compliant).
There are lots of details I left out but that is in essence what needs to happen.
The most common way to transmit commands/data is to use an interrupt driven method. The DO bit will set when a data byte can be written to the CDOR. The CO bit will set when a command byte can be written to the CDOR. The writes to the CDOR need to be throttled with CO/DO to allow time for the byte to be handshaked across the GPIB.
Most of this is covered in chapters 5 and 6 of the 7210 manual. Have you read these chapters?
Also, do you have a GPIB analyzer? The analyzer allows you to examine the state of the GPIB signals and can be invaluable when writing firmware.