PDA

View Full Version : 8-bit ASCII animator in ASM



per
July 23rd, 2008, 10:00 AM
I just made this program, and this will be my second lardger ASM program writted for the IBM PC. This program is a ASCII/text animation viewer with support for up to 32 frames. It has a framerate of 18.2 fps (However, the speed might appear a little unstable on some Win. XP machines).

controlls:
+ = speed up animation
- = slow down animation
Enter = reset fps
anything else registered by BIOS int 16h = terminate program.

I got the idea for this program by another program that used more RAM than my XT had.

Attachements:
Animator.zip = My program I just told about.
textanim.zip = The program I got the idea from.

Trixter
July 23rd, 2008, 02:00 PM
Very nice! But I noticed something:



"Why no more than 32 frames?: Because of the limitations for a *.COM file. A *.COM file can't be larger than 64Kb, and the data segement have to be the same as the code segement."


Methinks you need to research int 21h/48: http://www.ctyme.com/intr/rb-2934.htm

Just ask DOS for as many memory blocks as you need. A .COM file is limited to 64K of code and data in a single 64K segment but that doesn't mean you can't use additional segments for additional data...

per
July 24th, 2008, 07:58 AM
Very nice! But I noticed something:



Methinks you need to research int 21h/48: http://www.ctyme.com/intr/rb-2934.htm

Just ask DOS for as many memory blocks as you need. A .COM file is limited to 64K of code and data in a single 64K segment but that doesn't mean you can't use additional segments for additional data...

Ive just started coding in ASM, and this is first time I use DOS calls. All DOS calls I have used was described in the book "The IBM PC from the inside-out" (which is the only reference I got for DOS calls), however, that book does only describe the most commonly used ones, and referes to the PC-DOS TechRef for more information. (I dont have the TechRef, and I would be happy if somebody scanned the PC-DOS 2.1 version).

Terry Yager
July 24th, 2008, 03:34 PM
Not set up for scanning, but I have a hard copy I'll send ya for shipping. PM please.

--T

nige the hippy
July 25th, 2008, 04:24 AM
Ive just started coding in ASM
wow some start!! very impressive

per
July 25th, 2008, 04:53 AM
wow some start!! very impressive

This is really the third program I have made in x86 ASM.

The first was the "Matrix simulator" which I wrote another thread about here.
The second one just cleared the screen and reset the cursor before doing an Int 19h (I really needed that to get the CD-ROM on my 486 to work)
This is the third one.

I made a small program In-between the 2nd and the 3rd one in Z80 ASM to do some archive/unarchive stuff on my TI 84 pluss SE calc.


Not set up for scanning, but I have a hard copy I'll send ya for shipping. PM please.

--T

PM sendt.

Mike Chambers
July 29th, 2008, 10:33 AM
Very nice! But I noticed something:



Methinks you need to research int 21h/48: http://www.ctyme.com/intr/rb-2934.htm

Just ask DOS for as many memory blocks as you need. A .COM file is limited to 64K of code and data in a single 64K segment but that doesn't mean you can't use additional segments for additional data...

can i use this interrupt call to allocate a block in video RAM and maybe some other interrupt to move data from an arbitrary location directly into it??

Trixter
July 29th, 2008, 12:30 PM
No. You read/write video RAM directly.

per
August 7th, 2008, 06:40 AM
Not set up for scanning, but I have a hard copy I'll send ya for shipping. PM please.

--T

I'm not sure if you got my PM, you haven't made any reply yet...

So just in cause, I'm telling that I am interested in the offer.

DoctorPepper
August 20th, 2008, 02:36 AM
Great job on only your third ASM program!

When I was learning 8086/8088 Assembler (many years ago, and most of it forgotten now), one book I found to be the most informative was "Advanced MS-DOS" by Ray Duncan. If you can find a copy of that book, grab it.

per
August 21st, 2008, 04:50 AM
Do you think this: http://www.amazon.com/Microsoft-MS-DOS-Programmers-Reference-Professional/dp/1556155468/ref=sr_1_1?ie=UTF8&s=books&qid=1219322253&sr=1-1 covers everything that the IBM PC-DOS 2.1 TechRef covers?