LOGIN   :::   RECOVER PASS   :::   GET ACCOUNT    
Browse
  • Projects
  • Code (CVS)
  • Forums
  • News
  • Articles
  • Polls
  •  
    OpenCores
  • FAQ
  • CVS HowTo
  • Mission
  • Media
  • Tools
  • Advertise
  • Mirrors
  • Logos
  • Contact us
  • Job Opportunity
  •  
    Tools
  • Search
      
  • Download Cores (CVSGet)
  •  
    More
  • Wishbone
  • Perlilog
  • EDA tools
  • OpenTech CD
  •  
    Navigation: All forums > Cvs-checkins > Message List > Message Post

    Message

    Reply | Reply all
    Date Prev | Date Next | Thread Prev | Thread Next Date Index | Thread Index

    From: cvs at opencores.org<cvs@o...>
    Date: Tue Jun 5 17:36:38 CEST 2007
    Subject: [cvs-checkins] MODIFIED: jop ...
    Top
    Date: 00/07/06 05:17:36

    Added: jop/java/target/src/app/lego/utils AudioPlayback.java
    TrivialFS.java
    Log:
    Adding the Lego Java Programs


    Revision Changes Path
    1.1 jop/java/target/src/app/lego/utils/AudioPlayback.java

    http://www.opencores.org/cvsweb.shtml/jop/java/target/src/app/lego/utils/AudioPlayback.java?rev=1.1&content-type=text/x-cvsweb-markup

    Index: AudioPlayback.java
    ===================================================================
    package lego.utils;


    import lego.lib.Speaker;
    import util.Amd;

    import com.jopdesign.sys.Const;
    import com.jopdesign.sys.Native;

    public class AudioPlayback
    {
    public static final int SIZE_OFFSET = 40;
    public static final int DATA_OFFSET = 44;


    /**
    * Blocking.
    * @param fileNumber Standard (PCM) WAVE file.
    */
    public static void playFromTrivialFS(int fileNumber, int usPerSample)
    {
    // int size = TrivialFS.getFileSize(fileNumber);

    int address = TrivialFS.getFileAddress(fileNumber);

    int size = Amd.read(address+SIZE_OFFSET+0);
    size |= Amd.read(address+SIZE_OFFSET+1) << 8;
    size |= Amd.read(address+SIZE_OFFSET+2) << 16;
    size |= Amd.read(address+SIZE_OFFSET+3) << 24;

    int nextStop = Native.rd(Const.IO_US_CNT) + usPerSample;
    int current;

    for (int j = DATA_OFFSET; j < size; j++)
    {
    lego.lib.Speaker.write(Amd.read(address+DATA_OFFSET+j));
    while ((current = Native.rd(Const.IO_US_CNT)) < nextStop);

    nextStop += usPerSample;

    // waitForNextPeriod();
    }
    }

    }



    1.1 jop/java/target/src/app/lego/utils/TrivialFS.java

    http://www.opencores.org/cvsweb.shtml/jop/java/target/src/app/lego/utils/TrivialFS.java?rev=1.1&content-type=text/x-cvsweb-markup

    Index: TrivialFS.java
    ===================================================================
    package lego.utils;

    import util.Amd;

    public class TrivialFS
    {
    public static int getFileCount()
    {
    int index = -4;
    int length = 0;
    int count = 0;

    while (true)
    {
    index += 4 + length;

    length = Amd.read(index+0) << 24;
    length |= Amd.read(index+1) << 16;
    length |= Amd.read(index+2) << 8;
    length |= Amd.read(index+3);

    if (length != 0)
    count++;
    else
    break;
    }

    return count;
    }

    public static int getFileAddress(int fileNumber)
    {
    int index = -4;
    int length = 0; for (int i = 0; i <= fileNumber; i++) { index += 4 + length; length = Amd.read(index+0) << 24; length |= Amd.read(index+1) << 16; length |= Amd.read(index+2) << 8; length |= Amd.read(index+3); } return index + 4; } public static int getFileSize(int fileNumber) { int index = -4; int length = 0; for (int i = 0; i <= fileNumber; i++) { index += 4 + length; length = Amd.read(index+0) << 24; length |= Amd.read(index+1) << 16; length |= Amd.read(index+2) << 8; length |= Amd.read(index+3); } return length; } }

     
    Copyright (c) 1999 OPENCORES.ORG. All rights reserved.