Як завжди чистий і якісний фірмовий звук SoaD. Дуже сильні композиції і взагалі добре.

Єдине “але” – хлопці почали більш тяжіти до nu metal, мабуть це результат роботи продюсера Sad smile , хоча для розширення аудиторії це скоріше вірний крок. Всі пісні мають дуже просту і чітку мелодико-ритмічну лінію і як результат – запам’ятовуються одразу.

Проте особисто мені хотілося б чути більше пісень на зразок Chek’n’Stew.

[youtube=http://www.youtube.com/watch?v=q-sqhW8KEGw&fs=1&hl=en_US]

Дуже непогана екранізація Стівена Кінга. Але автори здається побоялися заглиблюватися в психологічні пригоди. Могло бути цікавіше.

Також склалося враження що ця роль не зовсім підійшла Джоні Депу. Невже він не універсальний актор?

http://www.imdb.com/title/tt0363988/

[youtube=http://www.youtube.com/watch?v=e5PWbTseMx0&fs=1&hl=en_US]

OS provides SEH to deal directly with crashes.

SEH is language independent but is usually implemented in C/C++.

Pair __try/__except allows to set code inside __try and handle exception in __except (http://msdn.microsoft.com/de-de/library/s58ftw19.aspx). Pair __try/__finally ensures that section of code in __finally is always executed even if __try block terminates prematurely (http://msdn.microsoft.com/de-de/library/9xtt5hxz.aspx).

__except is an exception filter for one of 3 values:

Value Meaning
EXCEPTION_EXECUTE_HANDLER The system transfers control to the exception handler, and execution continues in the stack frame in which the handler is found.
EXCEPTION_CONTINUE_SEARCH The system continues to search for a handler.
EXCEPTION_CONTINUE_EXECUTION The system stops its search for a handler and returns control to the point at which the exception occurred. If the exception is noncontinuable, this results in an EXCEPTION_NONCONTINUABLE_EXCEPTION exception.
void f() { __try { __try { // some code } __except (EXCEPTION_EXECUTE_HANDLER) { // process the exception } } __finally { // executed regardless of whether function caused a crash } }

Exception handler can determine exception value with GetExceptionCode function (http://msdn.microsoft.com/en-us/library/ms679356(VS.85).aspx) which can be called only in exception filters.

__try { n = x / y; } __except (EXCEPTION_INT_DIVIDE_BY_ZERO == GetExceptionCode() ? EXCEPTION_EXECUTE_HANDLER : EXCEPTION_CONTINUE_SEARCH) { n = NaN; }

In __except user function can be called. GetExceptionInformation (http://msdn.microsoft.com/en-us/library/ms679357(VS.85).aspx) returns a pointer to structure with exception info.

To generate an exception RaiseException (http://msdn.microsoft.com/en-us/library/ms680552(VS.85).aspx) can be used.

SEH limitations:

  • error codes are limited to unsigned int.
  • doesn’t mix with C++ exceptions.
  • doesn’t call any of object destructors.

Additional reading:

Formatting Symbols for Watch Window

Symbol

Description

Sample

Displays

d, i

Signed decimal int

(int)0xF000F064,d

-268373915

u

Unsigned decimal int

0x0065,u

101

o

Unsigned octal decimal

0xF065,o

0170145

x, X

Hexidecimal integer

61541,x

0x0000F065

l, h

Long or short prefix for d, I, u, o, x, X

0x0042406042,hx

0x0c22

f

Signed float

3./2,f

1.500000

e

Signed float, scientific notation

3./2,e

1.500000e+00

g

Signed float or signed scientific, which one is shorter

3./2,g

1.5

c

char

0x0065,c

‘e’

s

string

szHiWorlds,z

“Hello world”

su

Unicode string

szWHiWorlds,su

“Hello world”

st

Unicode or ANSI string, dependint on settings in autoext.dat

   

hr

HRESULT or Win32 error code

0,hr

S_OK

wc

Window class flag

0x0040,wc

WC_DEFAULTCHAR

wm

Windows message

0x0010,wm

WM_CLOSE

 

Ідея дуже цікава і весь час чекаєш на розвиток. Але нажаль усе закінчується рожевими шмарклями…

 

І фільм начебто непоганий, і тим не менш після перегляду є якесь розчарування, наче надурили.

http://www.imdb.com/title/tt0223897/

 

 

[youtube=http://www.youtube.com/watch?v=_pCtXRP1edo&w=640&h=385&hd=1]

Твір доволі монументальний, складається з трьох книг – Гроза в Безначалье, Сеть для миродержцев та Иди куда хочешь.

По суті це “переосмислення” Махабхарати, але ніяк не просто переказ. І хоча герої і події ті самі, тим не менше це новий, неочікуваний погляд на мотивацію і причини вчинків і подій.

Всередені (у другій книзі) трошки все якось нудненько підвисло, але під кінець ситуація виправилася і переборювати себе щоб дочитати не довелося Smile

Мабуть головний недолік – великий обсяг, читати у транспорті буде важкувато, або взагалі неможливо.

У подібному ж стилі (але краще і коротше імхо) в авторів написано “Герой должен быть один”.

Фірмовий звук дісторшена Megadeth – м’який і важкий одночасно.

Композиції все ускладнюються, гітаризмів усе менше. Мабуть так впливає створення композицій на комп’ютері.

Для шанувальників команди навіть не питання чи варто слухати (хоча це вже і не thrash).

[youtube=http://www.youtube.com/watch?v=iVqbnFV-wcI&w=480&h=385&hd=1]

Некласифіковані (поки що) команди

Command

Meaning

Exampe

uf

Show function disasembled code

uf main

.asm no_code_bytes

Do not show machine codes in assembler window

Symbols

Command

Variants/Params

Description/Examples

.sympath

.sympath

.sympath+

Display or set symbol search path

Append directories to previous symbol path

.symfix

.symfix

.symfix+ DownstreamStore

Display or set symbol search path

Append directories to previous symbol path

.reload

.reload

.reload [/f | /v]

.reload [/f | /v] Module

Reload symbol information for all modules**

f = force immediate symbol load (overrides lazy loading); v = verbose mode

Module = for Module only

 

**Note: The .reload command does not actually cause symbol information to be read. It just lets the debugger know that the symbol files may have changed, or that a new module should be added to the module list. To force actual symbol loading to occur use the /f option, or the ld (Load Symbols) command.

 

.reload /f @”ntdll.dll”

Immediately reload symbols for ntdll.dll.

.reload /f @”C:WINNTSystem32verifier.dll”

Reload symbols for verifier. Use the given path.

 

Breakpoints

Command

Variants/Params

Description/Examples

bp

bp [Addr]

bp [Addr] [“CmdString”]

 

[~Thrd] bp[#] [Options] [Addr] [Passes] [“CmdString”]

Set breakpoint at address

CmdString = Cmd1; Cmd2; .. Executed every time the BP is hit.

 

~Thrd == thread that the bp applies too.

# = Breakpoint ID

Passes = Activate breakpoint after #Passes (it is ignored before)

 

 

 

 

Memory

Command

Variants/Params

Description/Examples

d*

d[a| u| b| w| W| d| c| q| f| D] [/c #] [Addr]

 

Display memory [#columns to display]

a = ascii chars

u = Unicode chars

b = byte + ascii

w = word (2b)

W = word (2b) + ascii

d = dword (4b)

c = dword (4b) + ascii

q = qword (8b)

f = floating point (single precision – 4b)

D = floating point (double precision – 8b)

dy*

dy[b | d] ..

Display memory [#columns to display]

b = binary + byte

d = binary + dword

d*s

dds [/c #] [Addr]

dqs [/c #] [Addr]

Display words and symbols (memory at Addr is assumed to be a series of addresses in the symbol table)

dds = dwords (4b)

dqs = qwords (8b)

 

Call Stack

Command

Variants/Params

Description/Examples

k

k [n] [f] [L] [#Frames]

kb …

kp …

kP …

kv …

dump stack; n = with frame #; f = distance between adjacent frames; L = omit source lines; number of stack frames to display

first 3 params

all params: param type + name + value

all params formatted (new line)

FPO info, calling convention

 

 

 

 

Register

Command

Variants/Params

Description/Examples

r

r

r Reg1, Reg2

r Reg=Value

 

r Reg:Type

 

 

 

 

 

 

 

 

 

 

 

r Reg:[Num]Type

 

 

~Thread r [Reg:[Num]Type]

Dump all registers

Dump only specified registers (i.e.: r eax, edx)

Value to assign to the register (i.e.: r eax=5, edx=6)

 

Type = data format in which to display the register (i.e.: r eax:uw)

ib = Signed byte

ub = Unsigned byte

iw = Signed word (2b)

uw = Unsigned word (2b)

id = Signed dword (4b)

ud = Unsigned dword (4b)

iq = Signed qword (8b)

uq = Unsigned qword (8b)

f = 32-bit floating-point

d = 64-bit floating-point

 

Num = number of elements to display (i.e.: r eax:1uw)

Default is full register length, thus r eax:uw would display two values as EAX is a 32-bit register.

 

Thread = thread from which the registers are to be read (i.e.: ~1 r eax)

 

 

 

 

Exceptions, events and crash analysis

Command

Variants/Params

Description/Examples

.ecxr

 

displays exception context record (registers) associated with the current exception

 

 

 

 

Sources

Command

Variants/Params

Description/Examples

.srcpath

.srcpath

.srcpath+ DIR

Display or set source search path

Append directory to the searched source path

 

 

 

 

Executable

Command Variants/Params Description/Examples
.exepath .exepath

.exepath+ DIR

Display or set executable search path

Append directory to the searched executable path

MSDN

Інші ресурси