Jump to content



Photo
- - - - -

Video maker for AFX


  • Please log in to reply
4 replies to this topic

#1 Casto Productions

Casto Productions

    Casio Freak

  • Members
  • PipPipPipPip
  • 152 posts
  • Location:IL, USA

  • Calculators:
    TI-83, TI-86, CFX-9850, AFX2.0

Posted 10 July 2003 - 01:00 AM

Hey all, sorry for the extended absence, but my internet is down for a while here (bill problems, they expect me to pay! :lol: ) Anyway, I was trying to make my own video segments for the AFX using video maker. I can assemble the files just fine, but no matter what I try to do, it only plays at the speed of 30, even when I have it set at 1 when I assemble!! I'm using windows xp and I've tried running the file with both direxploer and the grayscale explorer with no positive results. Any idea on how I can get the speed to change for the assembled files??

#2 betoe

betoe

    UCF Spanish Translator

  • [Legends]
  • PipPipPipPipPipPipPip
  • 846 posts
  • Gender:Male
  • Location:Guadalajara/Mazatlan, Mexico.
  • Interests:Electronics, SW development, automotive. Swim->bike->run

  • Calculators:
    Algebra FX2.0 (R.I.P.), Classpad 300

Posted 10 July 2003 - 01:49 AM

How do you make your "delay"?

I dont know nothing for ASM for the calculator, but in other ASM I do:

A) checking the state of the accumulator:
;the accumulator is the register where the results of the operations of the
;microP are, and it`s affect the flags (in this cas the "0" flag)
MOV A,30H (A is a register, accumulator)
DELAY: DEC A (A = A-1)
JNZ A (Jump if A !=0)

Other way is checking the state of 1 bit of a register, etc...
If it is that you need i will check other ways to do.

#3 huhn_m

huhn_m

    Casio Maniac

  • [Legends]
  • PipPipPipPipPipPipPipPip
  • 1957 posts
  • Gender:Male
  • Location:Germany / Dresden
  • Interests:Assembler(!!!)
    Computers and Programming
    Operating Systems
    Programmable Calculators
    Maths and everything arround it

  • Calculators:
    FX-82SX / AFX 2.0+ (ROM 1.03) / FX 1.0+ (ROM 1.03)

Posted 10 July 2003 - 05:31 AM

I found a way to make a quite exact delay of 0.1 seconds:

Set the folowing proc to int 1Ch (timer). You need a byte variable call timer_i:
timer1 proc
           MOV timer_i,1
           iret
endp

now use the folowing code to generate the delay:
IDLE macro time_1
      LOCAL looper1,looper2
      MOV CX,time1
     looper1:
       MOV timer_i,0
       looper2:
             CMP timer_1,1
       JNE looper2
     loop looper1
endm

If you want to make a delay of 0.1 seconds do:

IDLE 1


#4 betoe

betoe

    UCF Spanish Translator

  • [Legends]
  • PipPipPipPipPipPipPip
  • 846 posts
  • Gender:Male
  • Location:Guadalajara/Mazatlan, Mexico.
  • Interests:Electronics, SW development, automotive. Swim->bike->run

  • Calculators:
    Algebra FX2.0 (R.I.P.), Classpad 300

Posted 10 July 2003 - 06:55 PM

Ooops, i was out of the topic, sorry. The only that i can say is that the better way to do delays is with timers (i dont know how many timers have the calculator uP), because the timer is counting when the program is running. With counters (like the example that I put on the top) the program is paused and the uP only do that function.

Other benefit that the timer have is that the user can calculate more exactly the duration of the "delay", depending of the CPU work frequency (in the AFX is 8MHz). The question is: which frequency of operation use the timer?

For example, in the 8051 CPU if i work with 12MHz, the timer have a divisor of frequency (input frequency / 12), and the timer will work with 1Mhz.
In this case when the timer counts from 0 to 10 (11 times), it will spend
11*[1/(1*10^-6)] Seconds.

Note: 1/(1*10^-6) is the period (T, the time of every timer count)
T=1/F

#5 superna

superna

    Casio Addict

  • Members
  • PipPipPip
  • 88 posts

Posted 11 July 2003 - 07:27 PM

Hey hes not asking this !
Yea casto, i made the Vb prog a long time ago and it don't work very good
Yea if you want to change speed, you can change it a the 5'st byte of the file with an HexEditor, put 30 in it and try
if not try another byte

I'll make a better program nearly !




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users