;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; ;; ;; Copyright (C) KolibriOS team 2004-2024. All rights reserved. ;; ;; Distributed under terms of the GNU General Public License ;; ;; ;; ;; GNU GENERAL PUBLIC LICENSE ;; ;; Version 2, June 1991 ;; ;; ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; macro PDEBUGF _level*, _fmt*, _bus*, _devfn*, [_args] { push ebx push ecx movzx ebx, _devfn shr ebx, 3 ; get rid of 3 lowest bits (function code), the rest bits is device code movzx ecx, _devfn and ecx, 00000111b ; get only 3 lowest bits (function code) DEBUGF _level, _fmt, _bus, ebx, ecx, _args pop ecx pop ebx }