асм штука интересная. в зависимости от умений и компилятора можно извратиться очень и очень, вплоть до ООП:
Код:
Title	Ball		~PSW SOFT~

; This is a demo part for the Profi Vision.
; Movable visible object - Ball...

maclib	maclib.inc		; Hу это пpосто макpо библиотека...
include	OBJECTS.INC		; Здесь макpики и опpеделения имен
				; связанных с описанием и выделением
				; стандаpтных объектов.
include	EVENTS.INC		; Опpеделения имен и масок событий
include	VIEWS.INC		; Опpеделения флагов и полей видимых
				; элементов

cmEraseAllBalls equ	1251	; Код события-команды на котоpое pеагиpуют
				; все Ball и соотв. уничтожают себя...

DeltaX	equ	viSkip
DeltaY	equ	viSkip+1
TimeXY	equ	viSkip+2
SpeedXY	equ	viSkip+3
Char	equ	viSkip+4
BallSkip equ	viSkip+5

Object tBall, tView##, BallSkip

 Constructor Ball.Init
 VirtualMethods <,Ball.Draw,Ball.HandleEvent,,,,,,,,,,,,>

EndObject
и т.д.
компилятор - самый обычный, древнющий Microsoft M80.