jp48 Posted October 11, 2010 Share Posted October 11, 2010 Hi all, I'm building a system to PocketPC with PocketVCS and DASM (or XASM). I've written programs with BatariBasic only, now I need a header for DASM (or XASM). I use only sound, AUDF0-1,AUDC0-1,AUDV0-1, I found the addresses, here: 15 AUDC0 ....1111 audio control 0 16 AUDC1 ....1111 audio control 1 17 AUDF0 ...11111 audio frequency 0 18 AUDF1 ...11111 audio frequency 1 19 AUDV0 ....1111 audio volume 0 1A AUDV1 ....1111 audio volume 1 Now I need (minimal) only sound header (if possible) for DASM or XASM which I'm able to run in PocketPC as 16-bit DOS versions using DosBOX for PocketPC. So far ready: processor 6502 org $1000 Not much, something is needed as nothing is heard, the code itself compiles without errors. Thanks for advance ! -Jukka Quote Link to comment Share on other sites More sharing options...
DavidEth Posted October 11, 2010 Share Posted October 11, 2010 I probably don't understand your question, but here are the standard 2600 headers. http://www.atari2600.org/DASM/Atari2600_1_10.zip -Dave Quote Link to comment Share on other sites More sharing options...
GroovyBee Posted October 11, 2010 Share Posted October 11, 2010 There should be a copy of vcs.h in your DASM release. Quote Link to comment Share on other sites More sharing options...
jp48 Posted October 11, 2010 Author Share Posted October 11, 2010 (edited) Thanks, no vcs.h needed, after some "pruning" here's the minimal (only sound) header: processor 6502 org $F000 Then label to start, LDA/STA to correct registers ($15,$17,$19) for AUDC0,AUDF0,AUDV0, What lacked my code was the end: org $FFFC .word Start assuming the starting label is Start. No header files are needed, works just with DASM: dasm file.asm -f3 -ofile.bin But I've one more question, a "correct" timing with VBLANK (without interrupts). Anyone knows, usually takes (in Z80, NESASM etc.) three-five lines. Thanks very much of your tips ! -jp Edited October 11, 2010 by jp48 Quote Link to comment Share on other sites More sharing options...
GroovyBee Posted October 11, 2010 Share Posted October 11, 2010 But I've one more question, a "correct" timing with VBLANK (without interrupts). Anyone knows, usually takes (in Z80, NESASM etc.) three-five lines. Andrew Davie's 2600 tutorials are here :- http://www.atariage.com/forums/topic/33233-sorted-table-of-contents/ They'll take you through getting up and running on the 2600. Quote Link to comment Share on other sites More sharing options...
jp48 Posted October 12, 2010 Author Share Posted October 12, 2010 Thanks, this is excellent, I've tried to find but no luck yet. I need something which waits one frame, 1/50 (or 1/60 in PAL) of second, in NES it is vwait: lda $2002 bpl vwait in MSX even halt seems to work. Everything else is done, I get sounds correctly using (stupid, inaccurate) empty loops for timing, works in Stella and PocketVCS. Also correctly created and compiled first program only using PocketPC today, no problems, everything works. Just that tiny information, how to get 1/50 second timing. Thanks ! -jp Andrew Davie's 2600 tutorials are here :- http://www.atariage.com/forums/topic/33233-sorted-table-of-contents/ They'll take you through getting up and running on the 2600. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.