Jump to content
  • entries
    4,949
  • comments
    2,718
  • views
    1,808,867

Title screen


atari2600land

363 views

there.
blogentry-9475-0-72835900-1544057432_thumb.png
Now what I want to do is have this start automatically WITHOUT me typing "SYS 4096." The * symbol does not want to work in DASM, so * = 1000 is out of the question...

2 Comments


Recommended Comments

Figured it out. Apparently * in my disassembler (DASM) means org. It kept giving me an unknown mnemonic error if I put in * = 0801. I found this online and replaced the *=0801 with org $0801 and it runs good.

 

  org $0801
    .byte $0c, $08, $0a, $00, $9e, $20
    .byte $34, $30, $39, $36, $00, $00
    .byte $00
  • Like 1
Link to comment

Here is a macro for you, suitable to be used in DASM. It is called like this:

 

basicline $0801,2018

 

where $0801 equals start of the program (org) and 2018 is the line number of the SYS. Basically it doesn't do anything your current code already doesn't, except that if you would have reason to use a different ORG or want a different line number, it will adjust automatically.

 

 

#mac basicline
  org {1}
  word 0$ ; link to next line
  word {2} ; line number
  byte $9E ; SYS token
 
; SYS digits
 
  if (* +  / 10000
    byte $30 + (* +  / 10000
  endif
  if (* + 7) / 1000
    byte $30 + (* + 7) % 10000 / 1000
  endif
  if (* + 6) / 100
    byte $30 + (* + 6) % 1000 / 100
  endif
  if (* + 5) / 10
    byte $30 + (* + 5) % 100 / 10
  endif
  byte $30 + (* + 4) % 10
  byte 0 ; end of BASIC line
0$:
  word 0 ; end of BASIC program
#endm
Link to comment
Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...