[quote name='aaarrr' date='Apr 2 2006, 15:00' post='100343']
[quote name='evgen2' post='100120' date='Apr 1 2006, 17:40']
1) Вылезла проблема с выравниванием.
[/quote]
Наверное, в описанном Вами случае стоит использовать union,
а еще лучше - сделать все руками, с выравниванием шутить не стоит.
[/quote]
ну лучше сразу на все грабли встать, чем потом по очереди. Я так понимаю что если это фича проца, то хоть union, хоть не union - если попадется невыравненный адрес, то хрень произойдет
[quote name='evgen2' post='100120' date='Apr 1 2006, 17:40']
2) не могу сообразить, как разрешать-запрешать прерывания.
[/quote]
Для глобального запрещения прерываний служат биты I и F статусного регистра,
записываются командой msr
[/quote]
[/quote]
Modem
Control
Register ?
А может таки VICIntEnable/VICIntClr ? Ну так я их использую и все равно с CARM-овским компилером получается фигня - так будто бы это VICIntClr не моментально действует. А вот с RealView - вроде бы как все правильно, но таки остаются сомнения - может быть надо таки делать какие ритуальные танцы для гарантирования атомарности действий ?