Skip to content

dsturnbull/spacemmo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vm:
    * bootstrap
        external disk manipulation
        boot sector
    * scheduler
    * paging
        set isr
        memory access: mmu on?
            page found? kgo
            page not found? call isr

    * interrupts
        code -> int
            kbd: save isr
            tty: send char
            clk: save isr, set timer
            port: pop input len, send input to port
        code <- int

        check events:
            kbd: push key, handle isr
            clk: handle isr
            port: push output len, send output to mem

    o disable update timer when not halted
    * refactor op handlers
    * add pseudo immediate mode instructions
    * add two-op swap instruction
    * dos
    * unix
    * fpu
    * gfx
    * sound

hw:
    * engine
    * radar
    * lifesupport
    * nav
    * network

game:
    * c++
    * gfx
    * sound
    * netcode

client_t
        entity_t entity
                entity_id_t id
                vec3f pos
                vec3f vel
                vec3f acc
                system_t system

        cpu_t cpu

        server_t server
                client_t clients[]
                world_t world
                        cluster_t clusters[]
                                system_t systems[]
                                        sector_t sectors[]
                                                entity_t entities[]

        ui_t ui
                console_t console

        client_loop()
                update_client(dt)
                        update_server(dt)
                                update_world(dt)
                                        foreach entities:
                                                update_entity(dt)
            update_cpus()

                send_login_request(username, password)

                handle_server_response(packet)
                        handle_login_success_response(id)
                                client.id = id
                        handle_login_failure_response()
                        handle_entity_request(entity)
                                if (entity->id == client->id)
                                        client->entity = entity
                                add_entity(world, entity)
                                send_entity_response()

        server_loop()
                update_server(dt)
                handle_client_request(packet)
                        handle_login_request(username, password)
                                if (auth(username, password))
                                        client = init_client()
                                        client->sock = sock
                                        client->entity = init_entity()
                                        send_login_success_response(e.id)
                                        send_entity_request(entity)
                                else
                                        send_login_failure_response()

vim: ts=4:sts=4:sw=4:et

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published