void UpdateLimbsDlists() { _dlistError = null; _limbDlists = new List <F3DZEX.Command.Dlist>(); foreach (var limb in _limbs) { F3DZEX.Command.Dlist dlist = null; try { if (limb.DListSeg.VAddr != 0) { dlist = _renderer.GetDlist(limb.DListSeg); } } catch (Exception ex) { if (_dlistError == null) { _dlistError = $"Error while decoding dlist 0x{limb.DListSeg.VAddr:X8} : {ex.Message}"; } } _limbDlists.Add(dlist); } }
void DecodeDlists() { _renderer.ClearErrors(); _dlistError = null; foreach (RenderRoutine routine in _routines) { try { routine.Dlist = _renderer.GetDlist(routine.Address); } catch (Exception ex) { _dlistError = $"Error while decoding dlist 0x{routine.Address:X8} : {ex.Message}"; return; } } }